JMS message for output
When the JMSOutput node receives a JMS message, it calls the JMSTransport parser to return an XML bit stream containing the JMSTransport section of the message, so that it can be examined and processed.
The node extracts the Message_MetaData and obtains the payload type information to identify which JMS message type to create for output. If the Message_MetaData folder is not present, the output node creates a BytesMessage by default.
Header data
The JMSOutput node extracts the JMS header data from the XML string, and uses this data to populate the values for the JMS header fields in the message.
Property data
The JMSOutput node extracts the property values from the XML string. The XML elements contain type information that identifies which Java™ Object type to create for each property value.
Message payload
The message payload is obtained from the JMS message as a bit stream. For TextMessage and BytesMessage payloads, the bit stream can be passed to the JMS API directly to create the appropriate payload.
For MapMessage and StreamMessage payloads, the individual elements must be extracted from the XML bit stream. The output node calls the appropriate JMS API method to create the map or stream fields in the message.
For an ObjectMessage payload, the JMSOutput node reserializes the bit stream payload by using the object class. The object class must be available in the Java class path for the integration node. The class path is defined in the mqsiprofile batch file, which is in the directory that contains the executable files for the integration node; for example, on Windows, the file is mqsiprofile.cmd in the install_dir/bin directory.
Sending JMS messages
See Using the Message Destination Mode for more information about how you perform these tasks.
Message publication
The message is published to the JMS destination that has been specified as a property of the JMSOutput node. However, if the JMSReplyTo header field is set in the JMS message, the JMSOutput node treats the message as a reply to a previous request, and publishes the message to the JMS destination of the previous request.