【发布时间】:2020-09-25 18:58:09
【问题描述】:
我正在尝试使用 NET IBM.XMS 连接到 KDPW 中的测试环境
我收到了来自 KDPW 的证书,该证书存储在 Windows 证书存储中。
我从收到的证书创建一个 KDB 文件。 KDB 文件存储在目录 C:\directory 中。 KDB 文件的名称是 nameOfKdbFile.kdb
当我尝试连接时收到错误代码:
IBM.XMS.XMSException:'CWSMQ0006E:在调用 ConnectionFactory.CreateConnection 方法期间收到异常:CompCode:2,原因:2538。 在执行指定方法期间,另一个组件引发了异常。
你能帮帮我吗?
代码:
cf.SetStringProperty(XMSC.WMQ_HOST_NAME, "ipAddress");
cf.SetIntProperty(XMSC.WMQ_PORT, port);
cf.SetStringProperty(XMSC.WMQ_CHANNEL, "channel");
cf.SetIntProperty(XMSC.WMQ_CONNECTION_MODE, XMSC.WMQ_CM_CLIENT);
cf.SetStringProperty(XMSC.WMQ_QUEUE_MANAGER, "queueManager");
cf.SetStringProperty(XMSC.WMQ_SSL_PEER_NAME, "peerName");
cf.SetStringProperty(XMSC.WMQ_SSL_CIPHER_SPEC, "cipherSpec");
cf.SetStringProperty(XMSC.WMQ_SSL_KEY_REPOSITORY, @"C:\directory\nameOfKdbFile");
cf.SetStringProperty(XMSC.WMQ_SSL_CLIENT_CERT_LABEL, "ibmwebspheremquserid");
【问题讨论】:
-
Windows 商店证书中的证书标签是什么?这是一个友好的名字?
-
XMSC.WMQ_CM_CLIENT是托管模式并使用 Windows 密钥库。XMSC.WMQ_SSL_KEY_REPOSITORY的有效值为*SYSTEM或*USER。如果要使用 kdb,则需要为非托管模式指定XMSC.WMQ_CM_CLIENT_UNMANAGED。 -
您可以尝试在
port上对ipAddress进行连接测试吗? 2538 是 MQRC_HOST_NOT_AVAILABLE,这通常是网络级别的问题(并非总是如此)。您是否考虑到我上面的反馈?