Skip to main content

JMS Sender

JMS Sender publishes a message to a queue or topic through the selected JMS Connection. It sends and returns; it does not wait for a response. To send a request and wait for a correlated reply, use JMS Request Reply instead.

The payload is mapped on the Input tab and serialized according to Message Type. Standard JMS headers and custom application properties are set from the input as well.

The activity has four tabs: Configuration, Advanced, Input, and Output.

Configuration

FieldRequiredDescription
NameOptionalName of the component.
DescriptionOptionalDescription of the component.
JMS ConnectionOptionalThe JMS connection resource to send through.
Destination TypeOptionalQueue or Topic. Defaults to Queue.
Destination NameOptionalDirect physical queue or topic name by default. Enable Destination Name Is JNDI on the Advanced tab to treat this as a JNDI binding name resolved through the selected JMS Connection's JNDI resource.
Message TypeOptionalHow the payload is serialized: Text, Byte, Object, Stream, or Map. Defaults to Text.
Input Properties KeyOptionalInput object holding custom JMS application property values. Defaults to properties.

Advanced

FieldRequiredDescription
Destination Name Is JNDIOptionalWhen enabled, Destination Name is resolved from the JMS connection's JNDI context instead of used as a physical queue or topic name. Defaults to cleared.
PropertiesOptionalCustom JMS application properties. These are separate from standard JMS headers and can be typed.

Input

FieldData TypeDescription
destinationNameStringRuntime destination override. When non-empty, this overrides the configured Destination Name; Destination Type and JNDI lookup remain controlled by the activity configuration.
payloadAnyMessage payload sent as the JMS body.
messageHeadersObjectStandard JMS headers to set as first-class fields. Overrides the config defaults.
propertiesObjectConfigured JMS application properties. These are user-defined JMS properties, separate from standard JMS headers.

How payload is serialized follows Message Type. Text sends a plain string when mapped from a string, or JSON text for objects and arrays. Map requires an object and sends a JMS MapMessage. Byte, Object, and Stream serialize the mapped JSON value.

messageHeaders

FieldData TypeDescription
correlationIdStringSets JMSCorrelationID — echo a request's id to correlate a reply.
typeStringSets JMSType.
priorityIntegerSend priority 09; applied at send time.
deliveryModeIntegerJMSDeliveryMode: 1 is non-persistent, 2 is persistent. Applied at send time.

Output

The activity returns a sendJMSMessageOutput object.

FieldData TypeDescription
messageSentBooleanTrue when the message was sent to the JMS destination.
payloadObjectDecoded JMS payload.
messageHeadersObjectStandard JMS headers plus configured and custom JMS properties.
propertiesObjectConfigured JMS application properties.