ibm-mq - 使用 websphere MQ 作为 XA 事务协调器

标签 ibm-mq xa

我正在尝试使用 Websphere MQ(不带 WAS)作为 MQ 和 Oracle 11g 之间的 Java 应用程序的 XA 事务协调器。

这可能吗?这是一个好的做法吗?

我已经在我的Windows(64位win7)上安装了MQ V7.0.1服务器并正确配置了XA资源管理器。然而,当我的简单java代码启动一个事务并将其中断时,只有队列上的消息可以回滚,但数据库操作无法回滚。我希望他们都能一起回滚。

我的简单java代码如下
QueueManager qmgr = new QueueManager(QM_NAME, 属性);
......
JdbcConnection conn = qmgr.getJdbcConnection(xads);
qmgr.begin();
//进行数据库操作并将消息放入队列
qmgr.backout();
conn.close();

但是只有“put message”可以回滚,而DB操作则不能。

我是 MQ 的新手,您有解决这个问题的办法吗?任何意见都将受到高度赞赏!

最佳答案

Detailed System Requirements页面说这是支持的,但对于某些组合,需要安装 Fix Pack 7.0.1.2 或 7.0.1.3 才能工作。有关详细信息,请参阅页面标题为资源管理器(当 MQ 是事务管理器时)的部分。

可以下载修复包 from here .
启用 XA 的文档 is here .

关于ibm-mq - 使用 websphere MQ 作为 XA 事务协调器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10416856/

相关文章:

java - 如何获取 IBM Websphere Queue 上的消息计数

java - Tomcat 7 + JNDI 资源 + IBM WebSphere MQ

java - 分布式(XA)事务的性能调整-如何?

mysql XA 提交

spring - 我什么时候使用 XA 数据源和 2 阶段提交

java - JBOSS:使用 Atomikos 在 Oracle XA 事务上卡住线程

java - 当服务器再次启动时自动恢复与主队列的连接

java - JMS 选择器如何随队列深度扩展?

websphere - 连接到 WebsphereMQ JMS 提供程序

mysql - 恢复 XID 提高 0 : unknown