【发布时间】:2015-10-04 01:38:27
【问题描述】:
我正在尝试从部署在 Cast Iron Live 上的编排将消息放入 Websphere MQ 队列。自从编排部署在 Cast Iron 上以来,我一直使用安全连接器。当我尝试执行流程时,它失败并且消息没有放在 MQ 队列中。以下是错误:
Error while trying to call remote operation execute on Secure Connector for activity
com.approuter.module.mq.activity.MqPut and Secure Connector LocalSecureConnector,
error is Unable to put message on queue null. MQ returned error code 2538.
Unable to put message on queue null. MQ returned error code 2538.
Fault Name : Mq.Put.OperationActivityId : 163
Message: Unable to put message on queue null. MQ returned error code 2538.
Activity Name:Put MessageFault Time: 2015-07-15T05:40:29.711Z
谁能帮我解决这个问题。如果需要任何进一步的细节,请告诉我。
以下是详细信息:
- Cast Iron Flow 部署在 Cast Iron Cloud 上,即 Cast Iron Live
- MQ 正在本地运行
- 我尝试连接的端口是 1414。
- 在安装 MQ 的机器上运行安全连接器。
- MQ 版本为 8。
- 在 Cast Iron 流程中,我使用 MQ 连接器,通过提供运行 MQ 的主机名、端口:1414、通道名称:SYSTEM.DEF.SVRCONN 和用户名 mqm。厌倦了使用我的登录用户名,将其添加到 mqm 组。但这似乎也不起作用。
【问题讨论】:
-
这很有帮助,但我们需要更多。例如,“在安装 MQ 的机器上运行安全连接器”是什么意思?这不是 MQ 术语。它是铸铁术语吗?此外,“我尝试连接的端口是 1414”很有帮助,但没有提及是否定义了 MQ 侦听器并在该端口上运行。另外,如果 Cast Iron 部署在外部云中并且 MQ 在内部,您是否知道有一条通过防火墙到达 MQ 的路由?
-
MQ 将在其日志文件中记录连接尝试并作为事件消息。如果登录名是问题所在,您会在 QMgr 上看到 2035 错误。 2538 表明它并没有那么远。但是,如果您确实做到了这一点,默认情况下 v8 QMgr 将不允许任何 SVRCONN 通道上的管理员连接。您必须禁用 CHLAUTH 或定义一个或两个新的 CHLAUTH rukle 才能获得 mqm ID 或 mqm 组中的任何内容以进行连接。同样,问题中没有足够的信息来说明这是否是一个问题。
-
感谢您的回复罗。安全连接器是铸铁术语。它是一个在运行 MQ 的机器上运行的连接器,并且在 Cast Iron 控制台中设置了相同的配置(非常类似于一种方式的 SSL 握手)。为了让 Cast Iron 云与本地 MQ 进行通信,它需要此安全连接器处于运行状态。它用于有防火墙的情况。在端口 1414 上运行了一个 MQ 侦听器。Cast Iron 流部署在外部的云上,而 MQ 在内部。如果您需要更多详细信息,请告诉我。
-
我也检查了 MQ 日志。但是日志中没有消息提供有关 MQ 中消息失败的信息。正如你所说,它还没有到达 MQ,因此日志中没有消息。