JMS messages are composed of the following parts:
- Header
- All messages support the same set of header fields. Header fields contain
values that are used by both clients and providers to identify and route messages.
- Properties
- Each message contains a built-in facility to support application-defined
property values. Properties provide an efficient mechanism to filter application-defined
messages.
- Body
- JMS defines several types of message body which cover the majority of
messaging styles currently in use. JMS defines five types of message body:
- Text
- A message containing a java.lang.String
- Object
- A message that contains a Serializable java object
- Bytes
- A stream of uninterpreted bytes for encoding a body to match an existing
message format
- Stream
- A stream of Java™ primitive values filled and read sequentially,
not supported in this version of MQe JMS
- Map
- A set of name-value pairs, where names are Strings and values are Java primitive
types. The entries can be accessed sequentially or randomly by name. The order
of the entries is undefined. Map is not supported in this version of MQe JMS.
The
JMSCorrelationID header field is used
to link one message with another. It typically links a reply message with
its requesting message.