JMS Header fields are stored within an MQeMsgObject using the following rules:
The header fields that map directly to MQeMsgObject fields
are:
Table 8. Header fields that map directly to MQeMsgObject fields
JMS header field | MQeMsgObject defined field |
JMSTimestamp | MQe.Msg_Time |
JMSCorrelationID | MQe.Msg_CorrelID |
JMSExpiration | MQe.Msg_ExpireTime |
JMSPriority | MQe.Msg_Priority |
Two JMS header fields, JMSReplyTo and JMSMessageID, are converted prior to being stored in MQeMsgObject fields.
JMSReplyTo is split between MQe.Msg_ReplyToQMgr and MQe.Msg_ReplyToQ, while JMSMessageID is the String "ID:" followed by a 24-byte hashcode generated from a combination of MQe.Msg_OriginQMgr and MQe.Msg_Time.
The remaining four JMS header fields, JMSDeliveryMode, JMSRedelivered, and JMSType have no equivalents in WebSphere MQ Everyplace. These fields are stored within an MQeFields object in the following manner:
This MQeFields object is then stored within the MQeMsgObject as MQe.MQe_JMS_HEADER. Finally, JMSDestination is recreated when the message is received and, therefore does not need to be stored in the MQeMsgObject.