我已将Grails应用程序配置为使用Atomikos插件以连接到两个数据库。当我尝试更新事务中的两个数据库时,出现以下异常:
javax.transaction.xa.XAException: connection exception: connection failure: java.lang.RuntimeException: unsupported internal operation: Result
at org.hsqldb.jdbc.pool.JDBCXAResource.prepareThis(Unknown Source)
at org.hsqldb.jdbc.pool.JDBCXAResource.prepare(Unknown Source)
at com.atomikos.datasource.xa.XAResourceTransaction.prepare(XAResourceTransaction.java:622)
at com.atomikos.icatch.imp.PrepareMessage.send(PrepareMessage.java:61)
at com.atomikos.icatch.imp.PropagationMessage.submit(PropagationMessage.java:111)
at com.atomikos.icatch.imp.Propagator$PropagatorThread.run(Propagator.java:87)
at com.atomikos.icatch.imp.Propagator.submitPropagationMessage(Propagator.java:66)
at com.atomikos.icatch.imp.ActiveStateHandler.prepare(ActiveStateHandler.java:173)
at com.atomikos.icatch.imp.CoordinatorImp.prepare(CoordinatorImp.java:832)
at com.atomikos.icatch.imp.CoordinatorImp.terminate(CoordinatorImp.java:1159)
at com.atomikos.icatch.imp.CompositeTerminatorImp.commit(CompositeTerminatorImp.java:92)
at com.atomikos.icatch.jta.TransactionImp.commit(TransactionImp.java:236)
at com.atomikos.icatch.jta.TransactionManagerImp.commit(TransactionManagerImp.java:498)
at com.atomikos.icatch.jta.J2eeUserTransaction.commit(J2eeUserTransaction.java:104)
at org.springframework.transaction.jta.JtaTransactionManager.doCommit(JtaTransactionManager.java:1010)
任何人都可以阐明为什么会这样吗?
谢谢!
最佳答案
我在HSQL帮助论坛上发布了相同的问题。在HSQL 2.3.1中,似乎尚未实现远程XA事务,但是它们可能会在下一版本中实现。
这是the forum thread的链接。
关于grails - HSQL和Atomikos:不支持的内部操作:结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21391954/