GWT with Glassfish 3/Hibernate-必须运行请求工厂验证工具

GWT with Glassfish 3/Hibernate-必须运行请求工厂验证工具,hibernate,gwt,glassfish-3,requestfactory,Hibernate,Gwt,Glassfish 3,Requestfactory,在过去的几周里,我一直在一起学习GWT和Hibernate,并想在本地glassfish服务器上展示一个演示(这就是我们的web应用服务器,尽管如果我找不到这个问题的答案,我可能会研究Tomcat或JBoss) 当我在标准本地服务器上运行我的应用程序(我通过eclipse运行它时使用的Jetty服务器)时,一切正常-我得到了RequestFactory ValidationTool必须在运行之前出错,但通常清理项目会修复它 我已经在eclipse项目中打开了注释处理,并且已经有一段时间没有看到这

在过去的几周里,我一直在一起学习GWT和Hibernate,并想在本地glassfish服务器上展示一个演示(这就是我们的web应用服务器,尽管如果我找不到这个问题的答案,我可能会研究Tomcat或JBoss)

当我在标准本地服务器上运行我的应用程序(我通过eclipse运行它时使用的Jetty服务器)时,一切正常-我得到了RequestFactory ValidationTool必须在运行之前出错,但通常清理项目会修复它

我已经在eclipse项目中打开了注释处理,并且已经有一段时间没有看到这个错误了。每次我将项目部署到Glassfish时,我都会发现RequestFactory ValidationTool必须针对RequestFactory错误运行—我不知道该怎么办

这里有一些需要考虑的事情——我也不熟悉Hibernate,不确定是否正确设置了persistence.xml文件——它位于src目录根目录下的META-INF文件夹中。我相信它的设置是正确的,但我想知道,如果不正确地设置持久性xml,是否会产生副作用

在此方面的任何帮助都将不胜感激

而且,只有当我部署到服务器时才会发生这种情况,在我部署到服务器之前,我使用Google编译,我将src目录放入jar中,并将其添加到war/lib目录中,然后运行ant脚本将其全部部署,然后手动将其部署到Glassfish上。我不认为我错过了任何步骤,但如果我错过了,请让我知道


如果其他人有这个问题,我让我的工作做一些有点古怪的事情

我遵循了这里的建议:正如回复中给出的那样——但我不得不调整一些事情

首先,我对/src文件进行了jar处理,并将其添加到我的war/WEB-INF/lib目录中

然后,我在根目录中创建了这个shell脚本,名为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中,它实际工作了。令我惊讶的是

谢谢

它与Hibernate或其他任何东西都没有关系。其思想是,当您构建用于部署的应用程序时,GWT希望您运行请求工厂验证工具。否则,您将无法通过客户机代码与服务器通信,尽管一切都可以正常编译