更新:在销毁WildFly实例并从头开始重新配置之后,该错误神秘地被解析为重复列的org.hibernate.MappingException。现在我已经知道问题出在哪里了,我可以着手修复它了。
目前,我正在评估WildFly 10中Hibernate支持的JPA。但是,在尝试部署我的测试war (由gradle构建)时,会产生一个看似无关的错误。下面是控制台日志中的行:
11:11:06,200错误org.jboss.as.controller.management-operation WFLYCTL0013:操作(“添加”)失败-地址:(“部署”=>“TestWar.war”)-故障描述:{"WFLYCTL0080:失败的服务“”=> "org.jboss.msc.service.StartException in service jboss.persistenceunit.\"TestWar.war#com.myapp.testwar.jpa\":java.lang.ClassCastException: org.dom4j.DocumentFactory无法转换到org.dom4j.DocumentFactory 由: java.lang.ClassCastException: org.dom4j.DocumentFactory无法转换为org.dom4j.DocumentFactory“}引起的
从我的build.gradle
group 'com.myapp'
name 'TestWar'
version '0.0.0-dev'
apply plugin: 'java'
apply plugin: 'war'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
configurations {
provided
}
sourceSets {
main {
compileClasspath += configurations.provided
}
}
dependencies {
provided group: 'dom4j', name: 'dom4j', version: '1.6.1'
provided group: 'javax.enterprise', name: 'cdi-api', version: '1.2'
provided group: 'javax.inject', name: 'javax.inject', version: '1'
provided group: 'org.hibernate', name: 'hibernate-core', version: '5.0.7.Final'
provided group: 'org.hibernate', name: 'hibernate-entitymanager', version: '5.0.7.Final'
provided group: 'org.hibernate', name: 'hibernate-envers', version: '5.0.7.Final'
provided group: 'org.hibernate', name: 'hibernate-java8', version: '5.0.7.Final'
provided group: 'org.hibernate.javax.persistence', name: 'hibernate-jpa-2.1-api', version: '1.0.0.Final'
provided group: 'org.jboss.spec.javax.annotation', name: 'jboss-annotations-api_1.2_spec', version: '1.0.0.Final'
provided group: 'org.jboss.spec.javax.ejb', name: 'jboss-ejb-api_3.2_spec', version: '1.0.0.Final'
provided group: 'org.jboss.spec.javax.sql', name: 'jboss-javax-sql-api_7.0_spec', version: '2.0.0.Final'
provided group: 'org.jboss.spec.javax.ws.rs', name: 'jboss-jaxrs-api_2.0_spec', version: '1.0.0.Final'
provided group: 'org.postgresql', name: 'postgresql', version: '9.4.1209'
}我从类似的帖子中尝试了以下解决方案:
以及其他来源的资料:
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
<deployment>
<dependencies>
<module name="org.dom4j"/>
</dependencies>
<local-last value="true"/>
</deployment>
</jboss-deployment-structure>有没有人有进一步的建议,或者我做了一些非常愚蠢的事情?
编辑:显然这个错误可能是由任何数据源配置问题引起的(参见这里)。作为参考,通过管理控制台对我的数据源进行的连接测试是成功的,据我所知,连接细节都是正确的。
发布于 2016-08-02 13:22:00
发生此错误(目前)是因为您在依赖项列表中包含了EntityManager。把它移开。你不应该需要它来做正常的手术。
参见关于这个问题的Hibernate Jira:不能将org.dom4j.DocumentFactory转换为org.dom4j.DocumentFactory
https://stackoverflow.com/questions/38719498
复制相似问题