2012-02-15 2 views
2

Я запускаю приложение GWT в режиме разработки из Glassfish 3.1.1 (запускается с аргументом -noserver).GWT.getModuleBaseURL() возвращает неправильное значение

Когда я звоню GWT.getModuleBaseURL(), следующий URL возвращается: http://localhost:8080/appName/appName/

Правильный URL должен быть http://localhost:8080/appName/. Интересно, что я сделал неправильно, так что имя приложения добавляется дважды.

Кстати, GWT.getHostPageBaseURL(); вернет правильный URL.

+1

Возможно, это может означать, что оба имени модуля в GWT и в корне контекста в Glassfish устанавливаются как "appName" –

ответ

4

Ваш комментарий - это то, что делает getModuleBaseURL(), он возвращает путь внутри скомпилированного модуля, где хранятся сгенерированный JavaScript и изображения. Если вы запустите приложение с URL-адресом http://localhost:8080/appName, то есть главной страницей, но если вы посмотрите в firebug или другом инспекторе, вы, вероятно, увидите запрос для http://localhost:8080/appName/appName/appName.nocache.js, который является файлом загрузочного JS. Это каталог, в котором содержится ссылка на базовый url модуля.

Смежные вопросы