1

我有一个客户端应用程序正在连接到具有持久订阅者的 MQ 主题。

当使用 MQ Session 对象的方法创建我的订阅者时CreateDurableSubscriber(IDestination dest, string subscription);,客户端使用此模式构建它自己的订阅名称:

X MS:{队列管理器}:{客户端 ID}:{订阅}

但是服务器在该字符串的开头期待J MS 而不是X MS。

这是一个代码示例:

using IBM.XMS;

var connectionFactory = XMSFactoryFactory.GetInstance(XMSC.CT_WMQ).CreateConnectionFactory();

connectionFactory.SetIntProperty(XMSC.WMQ_CONNECTION_MODE, XMSC.WMQ_CM_CLIENT_UNMANAGED);
connectionFactory.SetIntProperty(XMSC.WMQ_CLIENT_RECONNECT_OPTIONS, XMSC.WMQ_CLIENT_RECONNECT_Q_MGR);
connectionFactory.SetStringProperty(XMSC.WMQ_CONNECTION_NAME_LIST, "localhost(1414)");
connectionFactory.SetStringProperty(XMSC.WMQ_CHANNEL, "channel");
connectionFactory.SetStringProperty(XMSC.WMQ_QUEUE_MANAGER, "QMGR");
connectionFactory.SetStringProperty(XMSC.CLIENT_ID, "CLIENT_ID");

var connection = connectionFactory.CreateConnection();
var session = connection.CreateSession(false, AcknowledgeMode.AutoAcknowledge);
var destination = session.CreateTopic("/THE/TOPIC");
var subscriber = session.CreateDurableSubscriber(destination, "SUBSCRIPTION");

connection.Start();

它尝试连接到名为XMS:QMGR:CLIENT_ID:SUBSCRITION.

我正在使用 IBM.XMS.dll 版本 9.1.4 从MQ_Client-9.1.4.0-IBM-MQC-Win64.

当客户端构建该订阅名称时,我找不到任何文档或属性来覆盖此 XMS 值......任何线索?

4

0 回答 0