GWT with Glassfish 3 / Hibernate - необходимо запустить инструмент проверки фабрики - PullRequest
0 голосов
/ 17 января 2012

Я изучал GWT и Hibernate вместе в течение последних нескольких недель и хотел запустить демонстрацию на локальном сервере Glassfish (таков будет наш сервер веб-приложений, хотя, если я не смогу найти ответ на этот вопрос вопрос, который я могу посмотреть в Tomcat или JBoss)

Когда я запускаю свое приложение на стандартном локальном сервере (Jetty Server использовался, когда я запускал его через eclipse), все работает нормально - я получил сообщение о том, что RequestFactory ValidationTool должен быть запущен до того, как обычная очистка проекта исправит его.

В моем проекте eclipse включена обработка аннотаций - и я давно не видел эту ошибку. Каждый раз, когда я развертываю свой проект в Glassfish, я получаю RequestFactory ValidationTool, который должен быть запущен для ошибки RequestFactory - я не могу понять, что с этим делать.

Вот некоторые вещи, которые следует принять во внимание - я также новичок в Hibernate и не уверен, правильно ли я настроил свой файл persistence.xml - он находится в папке META-INF в корне моего каталога src. Я считаю, что он настроен правильно, но мне интересно, может ли неправильная настройка xml персистентности вызвать эту ошибку как побочный эффект.

Любая помощь по этому вопросу будет принята с благодарностью.

Кроме того, это происходит только при развертывании на сервере, перед тем как я использую Google Compile, я делаю jar свой каталог src и добавляю его в мой каталог war / lib, а затем запускаю сценарий ant для всего этого war затем вручную разверните его на Glassfish. Я не думаю, что пропустил какие-либо шаги там, но если я сделал, пожалуйста, дайте мне знать.


на случай, если у кого-то еще есть эта проблема, я заставляю свою работу делать что-то немного прикольное

Я последовал совету: http://code.google.com/p/google-web-toolkit/wiki/RequestFactoryInterfaceValidation, как указано в ответе, - но мне пришлось кое-что настроить

сначала я собрал файл / src и добавил его в каталог war / WEB-INF / lib

Затем я создал этот сценарий оболочки в моем корневом каталоге как jar.sh

.
#!/bin/sh
    java \
    -cp war/WEB-INF/lib/myproj.jar:war/WEB-INF/lib/requestfactory-apt.jar:war/WEB-INF    /lib/requestfactory-server.jar \
    com.google.web.bindery.requestfactory.apt.ValidationTool \
    myproj-validated.jar \
    com.myproj.client.MyprojRequestFactory

Затем я запустил jar.sh из командной строки, переместил новый файл jar в мой каталог war / WEB-INF / lib, экспортировал весь проект в виде файла war и запустил его в glassfish, и он действительно сработал. к моему удивлению.

Спасибо

1 Ответ

1 голос
/ 17 января 2012

http://code.google.com/p/google-web-toolkit/wiki/RequestFactoryInterfaceValidation

Это не связано с Hibernate или чем-то еще. Идея состоит в том, что когда вы создаете свое приложение для развертывания, GWT хочет, чтобы вы запустили инструмент проверки фабрики запросов. В противном случае вы не сможете общаться с сервером из своего клиентского кода, хотя все будет хорошо скомпилировано.

...