【问题标题】:How to manage Distributed transaction using spring and J2EE (EJB) CMT如何使用 Spring 和 J2EE (EJB) CMT 管理分布式事务
【发布时间】:2014-09-01 05:43:37
【问题描述】:

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

有人知道怎么做吗?

【问题讨论】:

    标签: java spring jakarta-ee transactions ejb


    【解决方案1】:

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

    方法调用应该通过远程 EJB 调用或使用 WS-AtomicTransaction 处理事务边界的 Web 服务来完成。如果您不想更改架构以添加远程 EJB,最好的办法是使用带有 WS-AT 的 Web 服务,该服务在底层使用 XA 事务。

    【讨论】:

    • 这是有道理的,我也在使用 Web 服务从基于 Spring 的应用程序中调用方法。但我不确定如何在此处添加对 WS-AT 的支持,因为它使用 Restlet。
    • 我没有使用 Restlet 库,但据我所知,它不支持插入全局事务协调器,但同样,我可能错了......
    猜你喜欢
    • 2015-11-26
    • 2011-10-07
    • 2011-11-15
    • 1970-01-01
    • 1970-01-01
    • 2011-07-20
    • 2012-02-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多