目前,在Hibernate验证已发布了最新版本4.3.0.Final 这里 。 我试图将它升级到Glassfish的我作为3.1.2以下的步骤: -
1. Remove the GLASSFISH/glassfish/modules/bean-validator.jar
2. Copying the hibernate-validator-4.3.0.Final.jar to GLASSFISH/glassfish/modules
3. Restart the Glassfish
4. The Glassfish cannot start. It seems hang.
通过谷歌搜索后,我发现,是由Glassfish的团队作为一个OSGi版本创建了一个名为“豆validator.jar”的文件。 可悲的是,我无法找到如何创建它。 你能帮进一步指教? 非常感谢您对您的帮助提前。 我期待着您的佳音。
如何构建GlassFish的豆validator.jar A(略过时)说明可以发现在这里 。
我们需要的,一般是一个OSGi包,其中包括Hibernate验证本身和Bean验证API。 有了这个包,你应该能够取代原来的豆validator.jar。 另外,你需要JBoss的日志记录包,因为发行4.3 Hibernate验证日志记录API,它的使用和已经自带了OSGi包的形式。
如果你正在构建一个Web应用程序,你也可以你的WAR包内HV 4.3和关闭通过提供文件的类加载器代表团WEB-INF/glassfish-web.xml
有以下内容:
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app>
<class-loader delegate="false" />
</glassfish-web-app>
这样的HV类会从你的应用程序,而不是从Glassfish的提供的模块被加载。
您可能也有兴趣在这个问题GLASSFISH-15648 ,其目的是为HV提供专用Glassfish的更新包。
由于我的情况是ear
,而不是war
,基于贡纳尔的建议下,我做了模块的一个补丁版本,这是部署到Glassfish
(我的版本是3.1.1 OSE
)。
有人可能会发现它仍然是有用的,看到我的博客我的解决方案(包括一步一步的方法): http://peter-butkovic.blogspot.de/2012/11/glassfish-311-oss-with-hibernate.html