我是hibernate的新手,并试图用于我的项目,我正在使用hibernate 4.3.8-Final,当我以7.1的形式部署到Jboss时,我收到了以下错误
Caused by: java.lang.ClassNotFoundException: org.jboss.as.jpa.hibernate4.JBossAppServerJtaPlatform from [Module "org.jboss.as.jpa.hibernate:4" from lo
cal module loader @699774b8 (roots: D:\Softwares\jboss-as-7.1.1.Final\modules)]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120) [jboss-modules.jar:1.1.1.GA]
我已经按照下面的jboss配置使用了更新的hibernate版本
但是我在joboss中进行了这些配置后,我已经超越了异常。
当我查看Jboss jpa配置时,我看到jboss.api被加载而不是hibernate。
<module xmlns="urn:jboss:module:1.1" name="org.jboss.as.jpa">
<properties>
<property name="jboss.api" value="private"/>
</properties>
<resources>
<resource-root path="jboss-as-jpa-7.1.1.Final.jar"/>
<!-- Insert resources here -->
</resources>
所以我的问题是如何在jboss jpa之前加载hibernate jpa,或者还有其他替代方法来解决这个问题。
答案 0 :(得分:0)
实际上这意味着,如果你想依赖于“提供的”Hibernate-JPA库,你的应用程序的“休眠”要求必须符合上述要求。但是,你可以选择创建一个war,jar或ear应用程序,在其中提供你喜欢的Hibernate-JPA版本。
我的建议是试用Wildfly,它比7.1.x好得多,而且Hibernate 4.3.7和4.3.8之间没有太大的变化
就个人而言,我会避免“修补”应用程序服务器,除非这是影响我的应用程序的关键问题。
如需进一步的帮助,您必须提供Maven pom文件。