Наскоро инсталирах най-новата актуализация на пакета за корекции на Worklight и сега изпълнявам v6.2.0.01.20141027-1531 Оттогава забелязах блокираща грешка относно внедряването на моята обща среда на WL сървъра.
Сега, когато разположа приложението си („Изпълни като > Изгради всички среди“ и след това „Изпълни на сървър за разработка на Worklight“), стартирането на приложението ми в „Преглед като общи ресурси“ или в мобилната уеб среда на iPad / Android ми дава следното Грешка в Javascript:
WL is not defined
Когато проверявам изходния код, разбирам, че изходният код на Javascript „генериран от Worklight“ липсва в тага head. Трябва да видя нещо подобно:
<script>
// Define WL namespace.
var WL = WL ? WL : {};
/**
* WLClient configuration variables.
* Values are injected by the deployer that packs the gadget.
*/
WL.StaticAppProps = {
"APP_DISPLAY_NAME": "appname",
"APP_ID": "project",
"APP_SERVICES_URL": "\/project\/apps\/services\/",
"APP_VERSION": "1.0",
"ENVIRONMENT": "preview",
"LOGIN_DISPLAY_TYPE": "popup",
"LOGIN_POPUP_HEIGHT": 610,
"LOGIN_POPUP_WIDTH": 920,
"PREVIEW_ENVIRONMENT": "common",
"WORKLIGHT_PLATFORM_VERSION": "6.2.0.01.20141027-1531",
"WORKLIGHT_ROOT_URL": "\/project\/apps\/services\/api\/app\/common\/"
};
</script>
...но няма нищо подобно в изходния код на моята страница (ето защо WL не е намерен). Освен това, той не включва файловете worklight.js и wljq.js, които се предполага, че се добавят динамично по време на фазата на изграждане (доколкото знам). Съдържанието ми в index.html е "ванилия" и обяснява защо нищо не работи.
Затова реших да проверя в архивите на bin, които се генерират по време на фазата на изграждане. Случва се архивът app-common.wlapp да съдържа правилно генерирания изходен код с всички генерирани от Worklight неща вътре. Изглежда, че нещо нередно се случва по време на стъпката на внедряване. Опитах се да го импортирам ръчно в WL Console, но за съжаление и той не работи (същият резултат).
Не успях да възпроизведа проблема при създаването на нов проект, изглежда, че се случва само след актуализация на Worklight до най-новата версия на fix pack. Поради това е сложно да се предостави примерен проект.
NB: всичко работи добре, след като работи на действително устройство. Само общата среда е нарушена в моя случай. Но един мой колега също забеляза този проблем за другите среди, така че... Ще ви уведомя, ако успея да го възпроизведа за другите среди.
Благодаря ви за помощта, моля, попитайте, ако имате нужда от повече информация от мен.