【发布时间】:2019-03-19 06:57:19
【问题描述】:
如果有人可以帮助我纠正代码中的问题,我将不胜感激。不知道哪里出错了。
目前我的 persistence.xml 包含
<property name="hibernate.transaction.manager_lookup_class" value="#####.hibernate.JbossTSTransactionManagerLookup"/>
<property name="hibernate.current_session_context_class" value="jta"/>
随着
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="persistenceUnitName" value="####"/>
<property name="jpaDialect" ref="jpaDialect"/>
</bean>
<bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="transactionManagerName" value="java:comp/env/TransactionManager"/>
</bean>
<tx:annotation-driven transaction-manager="transactionManager" />
上下文初始化失败:org.springframework.beans.factory.BeanCreationException:创建类路径资源中定义的名称为“transactionManager”的bean时出错[###XMLConfig.xml]:调用init方法失败;嵌套异常是 org.springframework.transaction.TransactionSystemException:JTA TransactionManager 在 JNDI 位置 [java:comp/env/TransactionManager] 不可用;嵌套异常是 org.springframework.jndi.TypeMismatchNamingException:JNDI 位置 [java:comp/env/TransactionManager] 上可用的 [class com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionManagerImple] 类型的对象不可分配给 [ javax.transaction.TransactionManager]
原因:org.springframework.transaction.TransactionSystemException:JTA TransactionManager 在 JNDI 位置 [java:comp/env/TransactionManager] 不可用;嵌套异常是 org.springframework.jndi.TypeMismatchNamingException:JNDI 位置 [java:comp/env/TransactionManager] 上可用的 [class com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionManagerImple] 类型的对象不可分配给 [ javax.transaction.TransactionManager]
在 org.springframework.transaction.jta.JtaTransactionManager.lookupTransactionManager(JtaTransactionManager.java:598)
原因:org.springframework.jndi.TypeMismatchNamingException:在 JNDI 位置 [java:comp/env/TransactionManager] 可用的类型为 [class com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionManagerImple] 的对象不是可分配给 org.springframework.jndi.JndiTemplate.lookup() 中的 [javax.transaction.TransactionManager] 在 org.springframework.transaction.jta.JtaTransactionManager.lookupTransactionManager()
【问题讨论】:
标签: spring spring-mvc jboss jndi jbossts