目前,Hibernate Validator已经发布了最新版本4.3.0 moment here。我已经尝试将它升级到我的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.通过谷歌搜索后,我发现名为"bean-validator.jar“的文件是Glassfish团队创建的OSGi版本。遗憾的是,我找不到如何创建它。您能帮我进一步提一下建议吗?非常感谢您提前给予的帮助。我期待着尽快收到你的回音。
发布于 2012-05-13 00:42:09
关于如何构建Glassfish的bean-validator.jar的描述(有点过时)可以在here中找到。
通常需要的是一个包含Hibernate Validator本身和OSGi验证API的Bean包。使用这个包,您应该能够替换原始的bean-validator.jar。此外,您还需要JBoss日志记录捆绑包,Hibernate Validator从4.3版开始使用它作为日志记录API,并且已经以OSGi捆绑包的形式提供。
如果你正在构建一个web应用程序,你也可以在你的WAR和turn off类加载器委派中打包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提供的模块加载。
你可能还会对issue GLASSFISH-15648感兴趣,它的目标是为HV提供一个专门的Glassfish更新包。
发布于 2012-11-16 19:58:00
因为我的案例是ear,而不是war,根据贡纳的建议,我做了一个模块的补丁版本,可以部署到Glassfish (我的版本是3.1.1 OSE)。
有些人可能会发现它仍然有用,请参阅我的博客了解我的解决方案(包括分步方法):http://peter-butkovic.blogspot.de/2012/11/glassfish-311-oss-with-hibernate.html
https://stackoverflow.com/questions/10548931
复制相似问题