Overriding JMS Target Message Properties

Adeptia Suite allows you to either dynamically define the message properties or manually enter the message properties while creating the JMS Target activity. To manually enter the values, create a JMS Target activity; enter values of the following standard properties:

  • Delivery Mode
  • Correlation ID
  • Message Priority
  • Reply To
  • Time to Live
  • Message Properties

 
You can define the message properties in the following ways:

  • Using hard coded values

In this case define the exact value, which you want to set in the target JMS Server.

  • Override the properties with the properties of the source data.

In this case, enable the Override checkbox of the properties, whose value you want to override from the corresponding value of the Source message.

  • Using Context variables

While designing the process flow in process designer, if you use JMS Target activity, the context variable corresponding to each JMS Standard properties are automatically declared.  You need to define the value of any of these variables using put-context-var action.  For example if you want to override the value of Priority of the message, follow the steps below:

  1. Drag the put-context-var action in the process designer and place it before the JMS Target activity.
  2. Double click on the put-context-var action. The properties of the put-context-var action is displayed.
  3. Click Edit.  The Edit Context Variable screen is displayed.
  4. Click the New Variable Button.
  5. Select the JMS target activity in the Activity Name drop-down list.
  6. Select the variable, which you want to override, from in the Variable Name drop-down list. For Example: jmsPriority.
  7. Enter the value of the variable, which you want to set in target JMS Message, in the Variable Value field.  Here you can either define the exact value or the name of any variable. In case you want use variable name then enter the variable name as $$variablename$$ in the Variable value field.
  8. Click on Done button of Context Variable Information window, and Edit Context Variable Window.
  9. Save the Process flow.

 
Following table lists the JMS Target Message Parameters and corresponding context variables.
 
Table3: JMS Target Message Parameters and Corresponding Context Variable Names

JMS Target Property Name

Variable Name

Delivery Mode

Transaction.JMS.JMSDeliveryMode

Priority

Transaction.JMS.JMSPriority

Correlation ID

Transaction.JMS.JMSCorrelationID

Reply To

Transaction.JMS.JMSReplyTo
Priority

Time to Live

Transaction.JMS.JMSExpirationTime

Message Properties

messagePropertiesXML
 
To override the message properties, which are defined within the Message Properties table, you need to define the value of messagePropertiesXML in XML format as shown below:
 
<variables><variable><name>JMS_IBM_Character_Set</name> <type>plainText</type> <value><![CDATA[ISO-8859-5]]></value> </variable> </variables>