【问题标题】:org.hibernate.service.spi.ServiceContributor: Provider org.hibernate.spatial.integration.SpatialInitializer not a subtypeorg.hibernate.service.spi.ServiceContributor:提供者 org.hibernate.spatial.integration.SpatialInitializer 不是子类型
【发布时间】:2016-09-28 23:59:07
【问题描述】:

我正在使用以下休眠 jars [1];当我在 wildfly 9 中部署我的 war 文件时,出现以下错误。

我该如何解决这个问题?

5:34:53,204 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 88) MSC000001: Failed to start service jboss.persistenceunit."test2dbwar.war#test2dbwar-persistence-unit": org.jboss.msc.service.StartException in service jboss.persistenceunit."test2dbwar.war#test2dbwar-persistence-unit": java.util.ServiceConfigurationError: org.hibernate.service.spi.ServiceContributor: Provider org.hibernate.spatial.integration.SpatialInitializer not a subtype
    at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:172)
    at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:117)
    at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:665)
    at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1.run(PersistenceUnitServiceImpl.java:182)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
    at org.jboss.threads.JBossThread.run(JBossThread.java:320)
Caused by: java.util.ServiceConfigurationError: org.hibernate.service.spi.ServiceContributor: Provider org.hibernate.spatial.integration.SpatialInitializer not a subtype
    at java.util.ServiceLoader.fail(ServiceLoader.java:239)
    at java.util.ServiceLoader.access$300(ServiceLoader.java:185)
    at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376)
    at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
    at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
    at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.loadJavaServices(ClassLoaderServiceImpl.java:341)
    at org.hibernate.boot.registry.StandardServiceRegistryBuilder.applyServiceContributors(StandardServiceRegistryBuilder.java:270)
    at org.hibernate.boot.registry.StandardServiceRegistryBuilder.build(StandardServiceRegistryBuilder.java:249)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.buildServiceRegistry(EntityManagerFactoryBuilderImpl.java:1035)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:842)
    at org.jboss.as.jpa.hibernate4.TwoPhaseBootstrapImpl.build(TwoPhaseBootstrapImpl.java:44)
    at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:154)
    ... 7 more

15:34:53,211 ERROR [org.jboss.as.controller.management-operation] (management-handler-thread - 12) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "test2dbwar.war")]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.persistenceunit.\"test2dbwar.war#test2dbwar-persistence-unit\"" => "org.jboss.msc.service.StartException in service jboss.persistenceunit.\"test2dbwar.war#test2dbwar-persistence-unit\": java.util.ServiceConfigurationError: org.hibernate.service.spi.ServiceContributor: Provider org.hibernate.spatial.integration.SpatialInitializer not a subtype
    Ca

[1]

  • hibernate-core-5.1.0.Final.jar
  • hibernate-entitymanager-5.0.1.Final.jar
  • hibernate-java8-5.1.0.Final.jar
  • hibernate-jpa-2.1-api-1.0.0.Final.jar
  • hibernate-spatial-5.1.0.Final.jar
  • hibernate-validator-5.2.1.Final.jar

编辑 jboss-deployment-structure.xml;

<jboss-deployment-structure >

  <deployment>

     <!-- exclude-subsystem prevents a subsystems deployment unit processors running on a deployment -->

     <!-- which gives basically the same effect as removing the subsystem, but it only affects single deployment -->

     <exclude-subsystems>

        <subsystem name="org.hibernate" />

    </exclude-subsystems>

    <!-- Exclusions allow you to prevent the server from automatically adding some dependencies     -->

    <exclusions>

        <module name="org.hibernate" />

    </exclusions>

  </deployment>

</jboss-deployment-structure>

【问题讨论】:

    标签: hibernate jpa jboss wildfly wildfly-9


    【解决方案1】:

    与您的previous question 一样,当您使用不兼容的版本时,您可能会遇到各种令人惊讶的错误。正如您在堆栈跟踪中看到的,您实际上使用的是 Hibernate 4,因为 Wildfly 9 包含 Hibernate 4。

    【讨论】:

    • 我在 jboss-deployment structure.xml 中排除了 Hibernate 4 版本(保留在 WEB_INF 文件夹根级别)并允许在我的战争中使用打包的 jar。我不知道它仍然如何使用 jboss 库。 jboss-deployment-structure.xml 更改后,我得到了上述问题。
    • @Ratha:嗯,你的 jboss-deployment-structure.xml 看起来怎么样?
    • 我用我的 jboss-deployment-structure.xml 编辑了我的问题
    • @Ratha;也许你必须排除其他东西,比如 jpa 。不幸的是,这可能并不简单。如果可能的话,你可以试试它是否适用于 Wildfly 10。
    • 我能够在 Wildfly 10 中克服这个 Hibernate 问题,但不幸的是,我的 kafka 初始化在 Wildfly 10 中遇到了另一个问题。 (请检查stackoverflow.com/questions/36761018/…)由于这个问题,我已经转移到wildfly 9,在那里我没有遇到//auth.conf 无法读取。// 问题。
    猜你喜欢
    • 1970-01-01
    • 2019-09-14
    • 1970-01-01
    • 2017-03-11
    • 2017-03-09
    • 2018-10-06
    • 1970-01-01
    • 1970-01-01
    • 2022-01-25
    相关资源
    最近更新 更多