如何使用spring和J2EE(EJB)CMT管理分布式事务

时间:2014-09-01 05:43:38

标签: java spring java-ee transactions ejb

我有一种情况要整合两个独立的系统。一种是使用J2EE,EJB和其他基于Spring的。现在问题是系统可以调用彼此的方法,我也想管理事务。我不确定如何协调两个应用程序事务管理器,因为它们都使用不同的(Spring和EJB)。

任何人都知道如何做到这一点?

1 个答案:

答案 0 :(得分:1)

首先,两个应用程序都应该在DataSource级别使用扩展事务(XA事务)(以及其他资源,例如消息队列,JCA适配器或您在应用程序中使用的任何资源)。

方法调用应该通过远程EJB调用或使用WS-AtomicTransaction来处理事务边界的Web服务来完成。如果您不想更改您的体系结构以添加远程EJB,那么最好的办法是使用WS-AT的Web服务,这些服务使用XA事务。