Java 持久性jar的问题

Java 持久性jar的问题,java,hibernate,jboss,Java,Hibernate,Jboss,我正在与JBOss抗争,我被困在一个似乎很难解决的问题上,但事实证明我不能。 当我尝试部署一个简单的java web应用程序时,我遇到了一个异常: org.hibernate.ejb.HibernatePersistence cannot be cast to avax.persistence.spi.PersistenceProvider 我知道拥有多个persistence.jar是一个问题。所以在我的pom中,我做了类似的事情: <dependency>

我正在与JBOss抗争,我被困在一个似乎很难解决的问题上,但事实证明我不能。 当我尝试部署一个简单的java web应用程序时,我遇到了一个异常:

org.hibernate.ejb.HibernatePersistence cannot be cast to avax.persistence.spi.PersistenceProvider
我知道拥有多个persistence.jar是一个问题。所以在我的pom中,我做了类似的事情:

<dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>3.4.0.GA</version>
            <exclusions>
                <exclusion>
                    <groupId>org.hibernate</groupId>
                    <artifactId>ejb3-persistence</artifactId>
                </exclusion>
</dependency>
但我很不幸。我仍然得到错误。谁能帮我解决这个任务


Agata

看起来您想在应用程序中打包自己的Hibernate版本。这是可能的,但您必须为应用程序设置classloader作用域。发件人:

与重写服务器类隔离 使用以下构造来 使用 覆盖 服务器类

对于jboss-web.xml:

换句话说,要么包含所有Hibernate库并禁用父类加载器委派,要么将它们全部排除并使用JBoss中的委派

另见
您要将JBoss部署到哪个版本?您好,非常感谢您的回复。我解决了我的问题,在构建war时将所有hibernate JAR和持久性从pom.xml中排除,效果很好。但再次感谢你的时间和帮助!
<jboss-web>
   <class-loading java2ClassLoadingCompliance="false">
      <loader-repository>
         com.example:archive=unique-archive-name
         <loader-repository-config>java2ParentDelegation=false</loader-repository-config>
      </loader-repository>
   </class-loading>
 ...