MQ GET问题 - 需要输入

时间:2015-01-07 08:54:03

标签: java jms ibm-mq ibm-was

我的机器上没有MQ安装程序 - 我从系统错误中获取此日志。 有人可以帮我解释一下吗? 我正在寻找验证的是:

(1) Should the messageId be all zeroes ?

    (2) When we do an MQPUT , we use the MessageId to search 
with and subsequent GET ? (validate)

(3) When we do a MQPUT , the correlationId is set as all Zeroes ?(validate)

这是 MQGET 日志

**MQGET**(Hconn,Hobj,MQMD,MQGMO,int,ByteBuffer,Pint,Pint,Pint) (**LocalMQ**) 
    [:/d1b0530f] Entry                                         
    0x146bcc9                                         
    0x6 0x163d7ed8 <null>                                         
    version:2 report:0 
**msgType**:8 
**expiry**:-1 
feedback:0 encoding:273 
codedCharSetId:0 format:'' 
priority:-1 
persistence:2 
**msgId**:000000000000000000000000000000000000000000000000 
**correlId**:XXX0269A //I have truncated this
**backoutCount**:0 
**replyToQ**:''
**replyToQMgr**:'' 

1 个答案:

答案 0 :(得分:1)

(1)通常的做法是在发出MQPUT之前将消息ID清零,以向队列管理器指示您希望它为您的消息生成唯一的消息ID。

(2)从MQPUT调用返回后,MQMD将包含为您的消息创建的生成的消息ID。如果需要在后续MQGET调用中进行关联,则可以使用此方法。

(3)对于请求消息上的关联ID,将它们归零是正常的。对于回复,将请求消息中的消息ID复制到关联ID字段中是正常的。