流程如下:


开始交易。
消息已放入队列,但尚未准备出队。 (现在我不知道如何实现)
(i)结束交易-成功:消息将可以出队。
(ii)回滚:消息将从队列中删除。
消息已成功由侦听器出队。


我可以为休眠实体配置Spring Transaction Manager。以同样的方式,我可以为JMSTransactionManager提供Active MQ。但是最大的问题是JMSTransactionManager将如何知道HibernateTransactionManager的状态?这两个如何相互作用?

Note: I am using Tomcat managed datasources for Hibernate entities. Apache Camel support is also available in project.

最佳答案

您需要一个启用XA的事务管理器,而Spring没有附带任何事务管理器。因此,要么将应用程序部署在Java EE应用程序服务器中,要么嵌入独立的事务管理器(如Bitronix)。

10-08 14:23