【发布时间】:2012-04-10 02:21:29
【问题描述】:
新手问题:
我被要求将一个 grails 应用程序部署到 jboss 5。我正忙着弄清楚如何利用 grails jbossas 插件。我尽我所知地遵循了文档,但我得到了同样的例外,就好像插件从来没有出现过一样。
这是我一直在关注的文档: http://grails-plugins.github.com/grails-jbossas/docs/manual/guide/2%20Usage.html
我已将该插件添加到 BuildConfig.groovy 插件{}闭包中。然后我打电话给grails war。什么都没有发生,我的战争部署了炸弹。
有人可以帮助新手让这个插件工作吗?不幸的是,我发现在实际告诉您如何使用它或插件何时发挥其魔力方面,我需要文档。
更新:
我的环境:
- Mac OS X Lion 开发机器
- Grails 2.0.3
- JBoss 5.1.0 -- 运行 Liferay 实例。
伯特,我做了以下事情:
grails generate-jboss-deploy 5-
grails war。 - scp 生成的 war 文件到我的远程服务器上的 deploy-jboss 目录。
尽职尽责地,jboss 拿起了新的战争并试图部署它。我收到以下(现在很可怕)异常:
Caused by: java.lang.NoSuchMethodException: org.hibernate.validator.ClassValidator
根据使用说明,我修改了Datasource.groovy的休眠配置:
hibernate {
cache.use_second_level_cache = true
cache.use_query_cache = true
cache.region.factory_class = 'net.sf.ehcache.hibernate.EhCacheRegionFactory'
validator.apply_to_ddl = false
validator.autoregister_listeners = false
}
似乎已通过运行generate-jboss-delpoy 5 脚本修改或创建的唯一文件是WEB-INF/jboss-web.xml。它的内容是:
<jboss-web>
<class-loading java2ClassLoadingCompliance="false">
<loader-repository>
sappi-label:loader=sappi-label.war
<loader-repository-config>java2ParentDelegation=false</loader-repository-config>
</loader-repository>
</class-loading>
</jboss-web>
我确认jboss-web.xml 文件存在于生成的war 文件中(展开,然后检查目录)。
Burt:除了jboss-web.xml,还有哪些文件应该被修改?
更新(再次):
我不认为 jbossas 插件有什么问题。我做了更多的测试,发现插件正在做它应该做的事情:删除 jars,放入 jboss-web.xml。我无法确认它是否修改了休眠配置,但我认为它是。我认为问题出在我尝试部署到的服务器上,即 Liferay 实例。
不管我在做什么,我都会收到一个异常,说 slf4j 无法成功加载。不多也不少。我会继续解决这个问题,但这超出了我最初的问题的范围。伯特,谢谢你的帮助。如果您对 slf4j 在 Liferay/jboss 环境中为什么会呕吐有任何想法,请告诉我。
问候。
谢谢!
【问题讨论】: