GWT-RPC Невозможно получить доступ к сервлету - PullRequest
0 голосов
/ 26 августа 2011

Я интегрировал свой модуль gwt в существующее веб-приложение и развернул его на jboss.

, когда я пытаюсь нажать gwt_servlet, тогда я получаю сообщение об ошибке при сбое метода asynccallback, т.е. запрошенный ресурс (/ warFileName / GWTAPPS/ myGwtModuleName / GWTServletName) недоступно.

Моя война содержит следующие данные:

GWTAPPS :

myGwtModuleName (папка): (папка содержит ->) advanced, css, gwt, папку с изображениями и некоторые файлы * .cache.png myGwtModule.html, myGwtModule.css

WEB-INF -> deploy - myGwtModuleName

Я скопировал скомпилированный файл gwt_servlet в / warFileName / GWTAPPS / myGwtModuleName /, по-прежнему получая такую ​​же ошибку, т.е. ресурс недоступен.

Является ли этонеобходимо поместить папку myBwtModuleName в папку WEB-INF / classes (скопированный файл * .class).как warfilename \ GWTAPPS \ mygwtmodule \ WEB-INF \ classes

Также иногда получаются исключения при развертывании
java.lang.NoClassDefFoundError: com / google / gwt / user / client / rpc / RemoteService

** Запись gwt_servlet сделана в web.xml # **

Этот web.xml отсутствует в gwtmodule, является ли это проблемой?

GWTServletName </ servlet-name> ui.mygwtmodule.server.BasicUpdateServiceImpl </ servlet-class>

< servlet-name>GWTServletName< /servlet-name>
< url-pattern>/GWTServletName< /url-pattern>
< /servlet-mapping>

также используется шаблон URL, такой как myGwtModuleName / GWTServletName

RemoteServiceRelativePath, добавленный в BasicUpdateService

@ RemoteServiceRelativePath («GWTServletName») * publicServer 10pWPextends RemoteService

Создан прокси удаленной службы для связи со службой GWTMassUpdate на стороне сервера.

private final BasicUpdateServiceAsync basicUpdateService= GWT .create (BasicUpdateService.class);

Вызов сервера

basicMassUpdateService.makeServreCall ("vaibhav", новый AsyncCallback () {

                    @Override
                    public void onSuccess(String result) {
                      Window.alert("Result = "+result);                         
                    }

                    @Override
                    public void onFailure(Throwable caught) {
                         Window.alert("On Failure  :"+caught);
                        //  No resource available :-|
                    }
                });

Буду признателен за любую помощь или руководство в этом вопросе

Ответы [ 2 ]

0 голосов
/ 26 августа 2011

Если вы не делаете какие-то неприятные вещи, развертывание должно быть таким же простым, как копирование всей папки "war".

Примечание: вы можете безопасно исключить WEB-INF/deploy из процесса, так как это необходимодля деобфускации стековой трассировки, если вы настроили «удаленное ведение журнала» с помощью java.util.logging эмуляции на стороне клиента)

0 голосов
/ 26 августа 2011

"Необходимо ли поместить папку WEB-INF / classes (скопированный * .class файл) в myGwtModuleName?"

Да.

Почему вы не используете maven или ant для развертыванияи строить шаги своих проектов?Вы теряете много времени, делая это вручную, и это более подвержено ошибкам, как эти ошибки.

Я бы посоветовал вам инвестировать в упаковку приложения gwt в вашей войне с использованием maven или ant и сосредоточиться на разработке gwtприменение.

...