0

我没有在 Java EE 下运行。

我想使用 Spring 进行 XA 事务以在 DB 和 JMS 之间共享事务。

spring 是否提供这样的功能或者我必须使用外部事务管理器,如 Atomikos?

我目前使用数据库的 DataSourceTransactionManager,我看到我也可以使用 JMSTransactionManager。他们一起工作吗?从文档中不清楚,因为提到了 JtaTransactionManager。

请指教。

亚尔

4

2 回答 2

1

Spring 只提供了一个事务管理框架,因此它不提供任何事务管理器。如果您在 Java EE 容器之外运行应用程序,并且需要在 DB 和 JMS 等资源之间进行事务,则必须使用 Atomikos 或 JOTM(Java 开放事务管理器)等外部事务管理器。

您可能需要参考http://www.javaworld.com/javaworld/jw-04-2007/jw-04-xa.html以了解有关使用 Spring 的 XA 的更多详细信息。

于 2013-02-16T06:04:23.370 回答
0

它们是本地资源,但 Spring 确实支持 XA(有关解释示例代码,请参阅此帖子):http: //blog.springsource.com/2011/08/15/configuring-spring-and-jta-without-full-java -ee/

于 2011-09-18T18:48:01.970 回答