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

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

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); 

现在我想获取消息类型和队列管理器的回复。 这不是太难,但我没有找到任何关于如何做到这一点。

如果查看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);