Integration Server 10.3 | Built-In Services Reference Guide | JMS Folder | Summary of Elements in This Folder | pub.jms:JMSMessage
 
pub.jms:JMSMessage
WmPublic. Document type that represents the structure and content of a JMS message received by a JMS trigger, received by the service pub.jms:receive, or as the output of pub.jms:send or pub.jms:sendAndWait.
Parameters
header
Document Optional. Document (IData object) containing the header of the JMS message.
Key
Description
JMSCorrelationID
String Optional. A unique identifier used to link multiple messages together. Often, a JMSCorrelationID is used to link a reply message with its requesting message.
JMSDeliveryMode
java.lang.Integer Optional.Delivery mode specified at the time the message was sent. Delivery mode can be one of the following:
*PERSISTENT to indicate that the JMS provider places the message in a persistent message store, allowing the message to be recovered in the event of a resource failure. This is the default.
*NON-PERSISTENT to indicate that the JMS provider does not place the message in a persistent store. The message has no guarantee of being delivered if the JMS provider fails.
Note:
When sending a message, this value is obtained from the JMSMessage/header/deliveryMode input parameter.
JMSDestination
Object Optional. Destination (queue or topic) to which the message was sent.
JMSExpiration
java.lang.LongOptional. Time at which this message expires. If the message producer did not specify a time-to-live, the JMSExpiration value is zero, indicating the message does not expire.
Note:
When sending a message, this value is obtained from the JMSMessage/header/timeToLive input parameter.
JMSMessageID
String. Optional. Unique identifier assigned to this message by the JMS provider.
JMSPriority
java.lang.Integer Optional. Defines the message priority. The JMS standard defines priority levels from 0 to 9, with 0 as the lowest priority and 9 as the highest.
Note:
When sending a message, this value is obtained from the JMSMessage/header/priority input parameter.
JMSRedelivered
java.lang.Boolean Optional. Flag indicating the JMS provider delivered this message to the JMS client previously. A value of:
*True indicates that the message may have been delivered in the past.
*False indicates that the JMS provider has not delivered this message previously.
JMSReplyTo
Object Optional. Destination to which a reply to this message should be sent.
JMSTimestamp
java.lang.Long Optional. Time at which the message was given to the JMS provider.
JMSType
String Optional. Message type identifier specified by the client when sending the message.
properties
Document. Optional. A document containing optional fields added to the message header. Integration Server may add the following properties to JMS messages it sends or receives.
Key
Description
JMSXDeliveryCount
java.lang.Integer Optional. Specifies the number of times the JMS provider delivered the message. Most JMS providers set this value.
JMS_WMClusterNodes
String Optional. Contains the name of the Broker in a Broker cluster that will receive the message or the name of the Broker or Brokers in the Broker cluster that received the JMS message.
activation
String Optional. A unique identifier assigned by the sender. An activation is used to group together messages that will be received by a JMS trigger with a join. A JMS trigger can join together messages with the same activation.
uuid
String Optional. A universally unique identifier for the message assigned by the sender. Integration Server can use the uuid for exactly-once processing or for request/reply.
body
Document Optional A Document (IData) contenting the JMS message body. Integration Server supports the following formats for the JMS message body:
Key
Description
string
String Optional. Message body in the form of a String.
bytes
primitive type Optional Message body in the form of a one-dimensional byte array.
object
Object. Optional. Message body in the form of a Serializable Java object.
data
Document Optional. Message body in the form of a document (IData object).
Note:
This message format can only be used when sending a JMS message from one Integration Server to another. When the JMS message is sent, the sending Integration Server encodes the IData into a byte array. When the receiving Integration Server receives the message, it decodes the byte array into IData.
message
Object Optional. Message body in the form of an actual javax.jms.Message.
Note:
When a JMS message is received using the pub.jms:receive service this field will always be populated because javax.jms.Message is required for acknowledging the message.
Note:
When receiving a javax.jms:MapMessage or javax.jms:StreamMessage this field will be populated. The data can then be processed using a Java service. A flow service cannot process the message in its current state.
Output Parameters
None.
See Also
pub.jms:receive
pub.jms:send
pub.jms:sendAndWait