【发布时间】:2021-09-27 19:41:29
【问题描述】:
我是 MQ 的新手,我正在使用这个 docker image 和默认设置。 我需要通过 java 应用程序连接(但没有 websphere)。
我使用 app 用户。这个可以毫无问题地连接到“DEV.APP.SVRCONN”通道,但我需要创建一个临时队列(为了获得响应),它无法创建它并出现以下错误:
JMSWMQ2008: Failed to open MQ queue 'SYSTEM.DEFAULT.MODEL.QUEUE'
这个错误的原因:
com.ibm.mq.MQException: JMSCMQ0001: IBM MQ call failed with compcode '2' ('MQCC_FAILED') reason '2035' ('MQRC_NOT_AUTHORIZED').
我检查了 MQ 管理器,“SYSTEM.DEFAULT.MODEL.QUEUE”不存在,我需要创建它吗?
【问题讨论】:
-
这真的是与stackoverflow.com/q/69344838/1968 不同的问题吗?
-
对我来说这 2 个不同的问题,所以可以问 2 个不同的问题
-
您是否创建了默认对象?请参阅有关 env vars 的 docker 说明,了解有关 MQ_DEV - 将此设置为 false 以停止创建默认对象。
-
您是如何检查 SYSTEM.DEFAULT.MODEL.QUEUE 的。这应该存在。该错误表明您缺少对队列的权限,如果它不存在,您将得到 2085 MQRC_UNKNOWN_OBJECT_NAME,除非 2035 与队列 Manger 相关,而不是与队列相关。