【发布时间】:2022-01-27 18:09:21
【问题描述】:
我在一个 docker 容器中运行 IBM MQ,在另一个容器中运行 IBM Websphere。从 Websphere 我正在尝试使用 CCDT 连接方法创建 QCF。我已将 CCDT 文件复制到 Websphere 容器的 /tmp 文件夹中,当我测试连接时出现错误:
A connection could not be made to IBM MQ for the following reason: JMSCMQ0001: IBM MQ call failed with compcode '2' ('MQCC_FAILED') reason '2278' ('MQRC_CLIENT_CONN_ERROR').*
我可以使用相同的 CCDT 文件从 MQ Explorer 进行连接。
使用的CCDT JSON示例:
{
"channel":
[
{
"connectionManagement":
{
"sharingConversations": 10,
"defaultReconnect": "no",
"heartbeatInterval": 10,
"keepAliveInterval": -1
},
"general":
{
"description": "Client Channel Definition",
"maximumMessageLength": 104857600
},
"name": "CHANNEL1",
"clientConnection":
{
"connection":
[
{
"host": "IP",
"port": port
}
],
"queueManager": "QMNAME"
},
"type": "clientConnection"
}
]
}
【问题讨论】:
-
您使用的是哪个版本的 WAS?
-
WAS 9.0.5.8-1 和 WAS MQ 9.2.0-2
-
只要您使用 9.2 RA 和 WAS,JSON CCDT 就应该可以工作。您能否在您的问题中提供 json(如果需要,进行清理),请查看队列管理器的 AMGERR01.LOG 文件以查看是否有相应的错误并将其发布。
-
当然。日志文件中没有任何内容。根据 IBM 9.0.5.8 版本使用 9.1.0.7 版本的资源适配器。这是在 OP 中添加的示例 JSON。 ——
-
抱歉,我以为您通过“WAS MQ 9.2.0-2”手动将 9 2.0.2 RA 添加到 WAS。 JSON CCDT 直到 9.2 才添加,因此您将无法在 9.1.0.7 RA 中使用它。另请注意,队列管理器产品的名称自 8.0 以来一直是“IBM MQ”,“Websphere MQ”是 5.3 - 7.5 的名称,5.2 和更低版本是“MQSeries”。您唯一的选择是使用二进制 CCDT 或添加/安装 9.2 RA (rar) 以代替内置的 9.1.0.7。 9.2.0.4是最新的,可以下载java-all包获取rar文件。