【问题标题】:Use websphere MQ as XA transaction coordinator使用 websphere MQ 作为 XA 事务协调器
【发布时间】:2012-05-02 15:28:14
【问题描述】:

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

有可能吗?这是一个好习惯吗?

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

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

但是只有“put message”可以回滚,而数据库操作不能。

我是 MQ 的新手,你有什么想法来解决这个问题吗?任何输入都非常感谢!

【问题讨论】:

  • 问题已解决,我的失败是因为没有安装'Client Extended Transaction Support'
  • 从 4 月 29 日起,它现在是免费的!很高兴你解决了。

标签: ibm-mq xa


【解决方案1】:

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

补丁包可以在from here下载。
启用 XA 的文档is here

【讨论】:

  • 谢谢罗伯。然而,即使使用 MQ V7.1,问题仍然存在。而且我也遵循了 IBM 信息中心的指示。一切看起来都很好,因为没有任何错误日志输出,但是 XA 事务不起作用。
  • 听起来是时候打开 PMR 了。如果 XA 已按照信息中心的规定进行配置,并且根据系统要求页面满足其他先决条件,那么最好的办法是让 IBM 支持人员详细了解配置以与所需配置进行协调。
  • 是的,我想我必须向 IBM 寻求帮助。
猜你喜欢
  • 1970-01-01
  • 2015-06-06
  • 2013-03-10
  • 1970-01-01
  • 2017-01-24
  • 2015-10-01
  • 1970-01-01
  • 2013-03-31
  • 2013-02-28
相关资源
最近更新 更多