在我们的一个计时器ejb中,我们调用jboss 6中的2个非xa数据源,我们得到以下错误。
[org.hibernate.util.JDBCExceptionReporter](http-0.0.0.0-443-4)无法在输入元感知对象时登记交易! - 嵌套throwable:(javax.transaction.SystemException:java.lang.Throwable:无法登记资源,请参阅先前的警告.tx = TransactionImple< ac,BasicAction:0:ffff0ab1ded5:1396:544f790a:1842状态:ActionStatus.ABORT_ONLY &GT); - 嵌套throwable:(org.jboss.resource.JBossResourceException:输入元感知对象时无法登记事务! - 嵌套throwable :( javax.transaction.SystemException:java.lang.Throwable:无法登记资源,请参阅先前的警告.tx = TransactionImple< ac,BasicAction:0:ffff0ab1ded5:1396:544f790a:1842状态:ActionStatus.ABORT_ONLY>))
有建议修改jbossjta-properties.xml以包含以下内容,但这也不起作用,因为jboss 6没有此文件。
<properties depends=”arjuna” name=”jta”>
<property name=”com.arjuna.ats.jta.allowMultipleLastResources” value=”true”/>
请告诉我们如何在jboss 6中的事务中启用多个非xa数据源。
答案 0 :(得分:0)
经过一些谷歌搜索后,我发现在transaction-jboss-beans.xml
bean的JBoss 6部署文件夹中的CoreEnvironmentBean
中添加以下属性就可以了。
<property name="allowMultipleLastResources">true</property>