gpt4 book ai didi

python - 如何使用 Python 连接到本地 MQseries 队列?

转载 作者:太空狗 更新时间:2023-10-30 01:10:34 27 4
gpt4 key购买 nike

我是 mqseries 的新手,我是从 IBM WebSphere MQ curses 开始的。有 MQ_APPLEMQ_ORANGE 队列管理器的示例。使用 MQ Explorer 将消息发送到本地或远程队列没有问题,但我想从代码发送此类消息:Python 或 Java。我用这样的代码尝试了 Python pymqi 库:

import pymqi

qmgr = pymqi.QueueManager(None)
qmgr.connect('QM_APPLE')

putq = pymqi.Queue(qmgr, 'Q1')
putq.put('Hello from Python!')

但我收到错误:

Traceback (most recent call last):
File "mq_put.py", line 4, in <module>
qmgr.connect('QM_APPLE')
File "c:\Python26\lib\site-packages\pymqi.py", line 758, in connect
raise MQMIError(rv[1], rv[2])
pymqi.MQMIError: MQI Error. Comp: 2, Reason 2540: FAILED: MQRC_UNKNOWN_CHANNEL_NAME

QM_APPLE 队列管理器和 Q1 本地队列。

我的代码有什么问题?

最佳答案

根据错误,您似乎正在尝试连接到远程队列管理器,但您正在使用本地队列管理器绑定(bind)方法进行连接。我这样说是因为错误表明 mqi 客户端不知道要连接到哪个 channel 。您能否说明您使用的是本地队列管理器还是远程队列管理器?我粘贴了下面的代码以使用 channel 连接到远程队列管理器。

import pymqi

queue_manager = "QUEUE_MANAGER_NAME"
channel = "SVRCONN.1"
host = "host.domain.com"
port = "1434"
conn_info = "%s(%s)" % (host, port)

qmgr = pymqi.QueueManager(None)
qmgr.connectTCPClient(queue_manager, pymqi.cd(), channel, conn_info)

关于python - 如何使用 Python 连接到本地 MQseries 队列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2536733/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com