TIBCO EMS STEP -6 :Messages
Messages:
Ø EMS Extensions to JMS Messages :
o The JMS specification
details a standard format for the header and body of a message. Properties are
provider-specific and can include information on specific implementations or
enhancements to JMS functionality.
o These are some message
properties which EMS provides a select number of extensions to JMS.
o The JMS standard
specifies two delivery modes for messages, PERSISTENT and NON_PERSISTENT. EMS
also includes a RELIABLE_DELIVERY mode that eliminates some of the overhead
associated with the other delivery modes.
o EMS also provides an
EXPLICIT_CLIENT_ACKNOWLEDGE and EXPLICIT_CLIENT_DUPS_OK_ACKNOWLEDGE mode that
restricts the acknowledgement to single messages.
o EMS extends the
MapMessage and StreamMessage body types.These extensions allow EMS to exchange
messages with TIBCO Rendezvous, which contains certain features not available
within the JMS MapMessage and StreamMessage.
Ø JMS messages have a
standard structure. This structure includes the following sections:
·
Header (required)
·
Properties (optional)
·
Body (optional)
Ø JMS Message Header
Fields The header contains 11 predefined fields that contain values used to
route and deliver messages.
§ JMSDestination is used for ,
Destination to which message is sent and will set by sender or publisher
§ JMSDeliveryMode is used for
,Persistent or non-persistent message. The default is persistent and will set
by sender or publisher
EMS extends the delivery mode to include a
RELIABLE_DELIVERY mode.
§ JMSExpiration is used for Length of
time that message will live before expiration. If set to 0, message does not
expire. The time-to-live is specified in milli seconds. If the server
expiration property is set for a destination, it will override the
JMSExpiration value set by the message producer and will set by sender or publisher
§ JMSDeliveryTime is used for,it is a
Read-only field. If the message producer has a delivery delay set, then the
time returned here after calling the send method represents the earliest time
when the EMS server will deliver the message to consumers. Once the message has
been received, it carries that same value. This value is calculated by adding
the delivery delay value held by the message producer to the time the message
was sent. For transactions, the delivery time is calculated using the time the
client sends the message, not the time the transaction is committed. and will
set by sender or publisher
§ JMSPriority Uses a numerical
ranking, between 0 and 9, to define message priority as normal or expedited.
Larger numbers represent higher priority and will set by sender or publisher
§ JMSMessageID value is uniquely
identifies each message sent by a provider.
§ JMSTimestamp is used for, Timestamp
of time when message was handed off to a provider to be sent. Message may
actually be sent later than this timestamp.
§ JMSCorrelationID this ID can be used to
link messages, such as linking a response message to a request message.
Entering a value in this field is optional. The JMS Correlation ID has a
recommended maximum of 4 KB. Higher values may result in the message being
rejected and will set by message client.
§ JMSReplyTo A destination to which
a message reply should be sent. Entering a value for this field is optional.It
will set by message client.
§ JMSType Message type
identifier sets by client.
§ JMSRedelivered JMS provider If this
field is set, it is possible that the message was delivered to the client
earlier, but not acknowledged at that time.
Comments
Post a Comment