【问题标题】:org.hibernate.integrator.spi.Integrator: Provider org.hibernate.envers.boot.internal.EnversIntegrator not a subtypeorg.hibernate.integrator.spi.Integrator:提供者 org.hibernate.envers.boot.internal.EnversIntegrator 不是子类型
【发布时间】:2016-07-21 06:07:59
【问题描述】:

我正在将我的 java Web 应用程序从 Jboss 7.1.1 Final 迁移到 Wildfly 10,使用:

  • 春季 4.2.0,
  • 休眠 5.0.7,
  • jpa 2.1
  • 和Mysql数据库。

    我在尝试运行我的代码时收到以下错误。

2016-07-20 19:30:50,176 错误 [org.jboss.msc.service.fail] (ServerService 线程池 -- 61) MSC000001: 启动服务失败 jboss.persistenceunit。“ccp-ear-1.0-SNAPSHOT.ear/ccp-entities-1.0-SNAPSHOT.jar#ccpPU”: 服务中的 org.jboss.msc.service.StartException jboss.persistenceunit。“ccp-ear-1.0-SNAPSHOT.ear/ccp-entities-1.0-SNAPSHOT.jar#ccpPU”: java.util.ServiceConfigurationError:org.hibernate.integrator.spi.Integrator:提供者 org.hibernate.envers.boot.internal.EnversIntegrator 不是子类型 在 org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:172) 在 org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:117) 在 org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:667) 在 org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1.run(PersistenceUnitServiceImpl.java:182) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 在 java.lang.Thread.run(Thread.java:745) 在 org.jboss.threads.JBossThread.run(JBossThread.java:320) 原因: java.util.ServiceConfigurationError: org.hibernate.integrator.spi.Integrator:提供者 org.hibernate.envers.boot.internal.EnversIntegrator 不是子类型 java.util.ServiceLoader.fail(ServiceLoader.java:239) 在 java.util.ServiceLoader.access$300(ServiceLoader.java:185) 在 java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376) 在 java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) 在 java.util.ServiceLoader$1.next(ServiceLoader.java:480) 在 org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.loadJavaServices(ClassLoaderServiceImpl.java:324) 在 org.hibernate.integrator.internal.IntegratorServiceImpl.(IntegratorServiceImpl.java:40) 在 org.hibernate.boot.registry.BootstrapServiceRegistryBuilder.build(BootstrapServiceRegistryBuilder.java:213) 在 org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.buildBootstrapServiceRegistry(EntityManagerFactoryBuilderImpl.java:365) 在 org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.(EntityManagerFactoryBuilderImpl.java:166) 在 org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:34) 在 org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder(HibernatePersistenceProvider.java:165) 在 org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder(HibernatePersistenceProvider.java:160) 在 org.hibernate.jpa.HibernatePersistenceProvider.createContainerEntityManagerFactory(HibernatePersistenceProvider.java:135) 在 org.jboss.as.jpa.service.PersistenceUnitServiceImpl.createContainerEntityManagerFactory(PersistenceUnitServiceImpl.java:318) 在 org.jboss.as.jpa.service.PersistenceUnitServiceImpl.access$1100(PersistenceUnitServiceImpl.java:67) 在 org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:167) ... 7 更多

【问题讨论】:

    标签: spring hibernate jpa wildfly


    【解决方案1】:
    • 您需要删除hibernate.cfg.xml 并将配置从该文件移至persistence.xml

    • 那么你还必须从WEB-INF/lib文件夹中删除所有休眠文件,因为WildFly有自己的,这种情况也可能产生冲突。 此链接中有关此问题的更多详细信息:JBoss Community Forum

    【讨论】:

    • 1) 我没有使用hibernate.cfg.xml,在persistence.xml中配置。 2)我在 pom.xml 中添加了所有 hibernate maven 依赖项
    【解决方案2】:

    Wildfly 10.0.0.Final 也有类似的问题。在我的项目中,我们在项目的 lib 目录中也有所有与休眠相关的库。但是 jboss 提供的库引起了冲突,所以我删除了 module.xml 目录中 module.xml 文件中的标签 <module xmlns="urn:jboss:module:1.3" name="org.hibernate"> 中的内容。我还删除了jboss-deployment-struture.xml中hibernate库的依赖关系,

    <exclusions> <module name="org.hibernate" slot="main"/> </exclusions>

    在这些更改之后,我能够克服与休眠相关的冲突问题。希望这会有所帮助。

    请注意jboss-deployment-struture.xml 单独更改并没有解决我的问题,module.xml 文件中提到的更改是强制性的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-09-28
      • 2019-09-14
      • 2017-03-11
      • 2017-03-09
      • 2018-10-06
      • 1970-01-01
      • 2022-01-25
      相关资源
      最近更新 更多