作为应用程序安装的一部分,我需要将一组xml消息放入MQ队列。更复杂的是,消息需要设置RFH2-header的usr-folder。
我发现IBM RFHUtil中的mqput2.exe是完成此任务的理想工具。不幸的是,我一直无法使usr文件夹的设置工作,文档太模糊。我做错了什么?或者,有没有其他更好的命令行工具?
我的道具。mqput2的文件如下所示:
[header]
.....
*
* message type
*
* Allowed values for message type
* 1 - request
* 2 - reply
* 4 - report
* 8 - datagram
* 112 - MQE fields from MQE
* 113 - MQE fields
* 65536 to 999,999,999 - user
msgtype=8
.....
*
* rfh usage
* rfh = N for No rfh
* rfh = A for Automatic (look for RFH at beginning of data file)
* rfh = 1 or V1 for Version 1 rfh from parameters in parm file
* rfh = 2 or V2 for Version 2 rfh from parameters in parm file
* rfh = X for special V2 rfh with fixed portion only and format=xml
*
* only first character checked, except for V when second character is also checked
*
rfh=X
<usr>
<NotificationType>RDS.Codebook.Changes</NotificationType>
</usr>
.....
[filelist]
file1.xmlmqput2简单地忽略<usr>部分,并且不将其包含在消息中。我还尝试了rfh=A并将<usr>部分放在file1.xml文件的开头,但随后得到了MQPUT error reason=2142 (无效的MQ头结构)。
发布于 2017-06-20 14:16:36
我这样设置它,它工作得很好:
[header]
qname=QName
qmgr=QMName
msgcount=1
format= "MQSTR "
codepage=1208
rfh=2
<usr>
<test>test</test>
</usr>
[filelist]
test.xml发布于 2017-06-21 16:39:03
此外,还可以使用dmpmqmsg实用程序从命令行发送消息,该实用程序是WMQ8安装的一部分。消息可以通过以下方式从包含标头的队列中导出
dmpmqmsg -m queue_manager> -I <queue> -f <msg_file> -a然后再次提交(我想,请参考文档)
dmpmqmsg -m queue_manager> -o <queue> -f <msg_file>然而,该实用程序不是WMQ 7.5的一部分。
https://stackoverflow.com/questions/44605805
复制相似问题