如何使用IBM MQ库从WebSphrere MQ MQMD头中读取值

时间:2014-09-18 07:27:04

标签: java ibm-mq

我们将此代码段作为起点:

import com.ibm.mq.MQEnvironment;
import com.ibm.mq.MQException;
import com.ibm.mq.MQGetMessageOptions;
import com.ibm.mq.MQMessage;
...
int openOptions = MQConstants.MQOO_INPUT_AS_Q_DEF;
MQQueue queue = qMgr.accessQueue(qName, openOptions);
...
MQMessage rcvMessage = new MQMessage();
MQGetMessageOptions gmo = new MQGetMessageOptions();
queue.get(rcvMessage, gmo);

现在我想获取消息类型和队列管理器的回复。它可能太难了,但我没有找到任何关于如何做到的事情。

1 个答案:

答案 0 :(得分:1)

如果查看MQMessage类的JavaDoc(http://www-01.ibm.com/support/knowledgecenter/SSFKSJ_8.0.0/com.ibm.mq.javadoc.doc/WMQJavaClasses/com/ibm/mq/MQMessage.html

它扩展了MQMD类(http://www-01.ibm.com/support/knowledgecenter/SSFKSJ_8.0.0/com.ibm.mq.javadoc.doc/WMQJavaClasses/com/ibm/mq/MQMD.html

并且它上面有所有的MQMD值..所以这个代码例如会显示replyTo&类型值

  System.out.println("MsgType="+ rcvMessage.messageType);
  System.out.println("ReplyToQ="+ rcvMessage.replyToQueueName);
  System.out.println("ReplyToQmgr="+ rcvMessage.replyToQueueManagerName);