Недавно я установил последнее обновление пакета исправлений Worklight, и теперь я использую версию 6.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>
...но в исходнике моей страницы ничего подобного нет (поэтому БЛ не найден). Более того, он не включает файлы worklight.js и wljq.js, которые должны динамически добавляться на этапе сборки (насколько мне известно). Мой контент index.html «ванильный», и это объясняет, почему ничего не работает.
Поэтому я решил проверить bin-архивы, созданные на этапе сборки. Бывает так, что архив app-common.wlapp содержит правильно сгенерированный исходный код со всем, что сгенерировал Worklight внутри. Похоже, что-то не так происходит на этапе развертывания. Я попытался импортировать его вручную в консоли WL, но, к сожалению, он тоже не работает (тот же результат).
Мне не удалось воспроизвести проблему создания нового проекта, похоже, это происходит только после обновления Worklight до последней версии пакета исправлений. Таким образом, сложно предоставить образец проекта.
NB: все работает нормально после запуска на реальном устройстве. В моем случае нарушена только общая среда. Но мой коллега также заметил эту проблему для других сред, поэтому... Я дам вам знать, если мне удастся воспроизвести ее для других сред.
Спасибо за вашу помощь, пожалуйста, спросите, если вам нужно больше входных данных от меня.