【发布时间】:2012-01-17 12:55:53
【问题描述】:
过去几周我一直在一起学习 GWT 和 Hibernate,并想在本地 glassfish 服务器上进行演示(这就是我们的 Web 应用程序服务器将要使用的,尽管如果我找不到这个问题的答案问题我可能会研究 Tomcat 或 JBoss)
当我在标准本地服务器上运行我的应用程序(我通过 Eclipse 运行它时使用的 Jetty 服务器)时,一切正常 - 我得到 RequestFactory ValidationTool must be run error before 但通常清理项目修复它。
我在我的 Eclipse 项目中打开了注释处理 - 并且有一段时间没有看到这个错误。每次我将我的项目部署到 Glassfish 时,我都会收到 RequestFactory ValidationTool Must be run for RequestFactory 错误 - 我不知道该怎么做。
这里有一些需要考虑的事情——我也是 Hibernate 的新手,我不确定我是否正确设置了我的 persistence.xml 文件——它位于我的 src 目录根目录的 META-INF 文件夹中。我相信它设置正确,但我想知道是否错误地设置持久性 xml 会产生该错误作为副作用。
对此的任何帮助将不胜感激。
此外,这仅在我部署到服务器时发生,在此之前我使用 Google 编译器,我将我的 src 目录 jar 并将其添加到我的 war/lib 目录中,然后运行一个 ant 脚本来运行它然后手动将其部署到 Glassfish 上。我认为我没有错过任何步骤,但如果我错过了,请告诉我。
如果其他人有这个问题,我让我的工作做一些有点时髦的事情
我听从了这里的建议:http://code.google.com/p/google-web-toolkit/wiki/RequestFactoryInterfaceValidation 在回复中给出 - 但我不得不调整一些东西
首先我将 /src 文件打包并添加到我的 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 glassfish-3 requestfactory