Mapping the JMS delivery option and message reliability to and from the IBM MQ persistence value

When converting messages between IBM MQ format and service integration format, service integration processes the message header fields and properties relating to message delivery mode, reliability, and persistence.

Quality of service indications in the IBM MQ format message

The IBM MQ format message contains the following indications of the quality of service:

MQMD persistence

This property is present in all IBM MQ format messages. The property specifies the quality of service that IBM MQ provides for the message as follows:

MQMD persistence Quality of service
MQPER_PERSISTENT Persistent quality of service. IBM MQ assures once and once only delivery of the message.
MQPER_NOT_PERSISTENT Nonpersistent quality of service. IBM MQ can discard the message in exceptional circumstances.
MQPER_PERSISTENCE_AS_Q_DEF IBM MQ sets the quality of service (persistent or nonpersistent) to the value configured for the destination queue.

For more information about the IBM MQ persistent and nonpersistent qualities of service, see the IBM MQ documentation .

MQRFH2 jms.Dlv (JMSDeliveryMode)

This property is present in IBM MQ format JMS messages that include the MQRFH2 header. The property contains the JMSDeliveryMode that was set when the application issued send for the message.

Quality of service indications when service integration converts a message to IBM MQ format

Message reliability levels - JMS delivery mode and service integration quality of service describes how service integration sets the message reliability. Briefly: JMS applications send messages with a JMS delivery mode (persistent or nonpersistent), then service integration uses JMS connection factory settings to map the JMS delivery mode to a service integration message reliability setting, and finally additional settings on bus destinations (including foreign destinations and alias destinations) can override this message reliability. When service integration converts the message to IBM MQ format, it sets the MQMD persistence indicator as follows:

Service integration message reliability MQMD persistence
Reliable persistent Persistent
Assured persistent Persistent
Reliable nonpersistent Nonpersistent
Express nonpersistent Nonpersistent
Best effort nonpersistent Nonpersistent

The sending application can optionally override this by setting the JMS_IBM_MQMD_Persistence message property in the message.

Quality of service indications when service integration converts a message from IBM MQ format

When service integration receives a message from IBM MQ, it uses the MQMD persistence value of the message together with the corresponding service integration reliability value that you configure in the IBM MQ link receiver or the IBM MQ server queue point to determine the reliability of the service integration message.