This topic contains sections marked as revised for this release

WebSphere Message Brokers
File: ac24871_
Writer: John Cooper

Reference topic

This build: July 31, 2007 21:19:42

JMS message for output

When the JMSOutput node receives a JMS message, it invokes the JMSTransport parser to return an XML bit stream containing the JMSTransport section of the message. 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 re-serializes the bit stream payload by using the object class. The object class must be available in the broker’s Java class path. The class path is defined in the mqsiprofile batch file, which is in the broker's executable directory; for example, on Windows, this is mqsiprofile.cmd in the install_dir/bin directory.

Sending JMS messages

JMSOutput node produces and supports:
Sending a datagram message
A message with sufficient information to reach its destination, but without an expectation of there being a response as defined in the node attributes.
Sending a Reply message
The message is treated as a reply as defined by the JMSReplyTo property value.
Sending a Request message
The JMSOutput node sends a message to a defined JMS destination with the expectation of a response from the recipient.

Message publication

The message is published to the JMS destination that has been specified as an attribute 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.

Related reference
JMS message structure
JMS message types
Representation of messages across the JMS Transport
JMS message as input
JNDI administered objects
Notices | Trademarks | Downloads | Library | Support | Feedback

Copyright IBM Corporation 1999, 2007Copyright IBM Corporation 1999, 2007. All Rights Reserved.
This build: July 31, 2007 21:19:42

ac24871_ This topic's URL is: