String
JMS Connector Reference - Mule 4
JMS Connector v1.7
Anypoint Connector for JMS (JMS Connector) enables your app to do messaging using the JMS implementation of your choice.
The JMS documentation set provides information about multiple versions of the JMS connector.
For information about each Mule 4 JMS Connector version, see:
Release Notes: JMS Connector Release Notes
Configurations
Default Configuration
Base configuration for JMS Connector
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Name |
String |
The name of this configuration. With this name can be later referenced. |
x |
|
Encoding |
The default encoding of the Message body to use if the message doesn’t communicate it |
|||
Content Type |
String |
The default contentType of the Message body to use if the message doesn’t communicate it |
/ |
|
Ack Mode |
Enumeration, one of:
|
The ConsumerAckMode to use when consuming a Message Can be overridden at the message source level. This attribute has to be IMMEDIATE if transactionType is LOCAL or MULTI |
AUTO |
|
Consumer Type |
One of:
|
The ConsumerType to use by default when consuming a Message Can be overridden at the message source level. |
||
Selector |
String |
Default selector to use for filtering when consuming a Message Can be overridden at the message source level. |
||
Max Redelivery |
Number |
Used to configure the number of redelivers before discarding the message. No redelivery is represented with 0, while -1 means infinite re deliveries accepted. |
0 |
|
Persistent Delivery |
Boolean |
Sets the default value for the Message#getJMSDeliveryMode. If true, the DeliveryMode#PERSISTENT mode is used, which instructs the JMS provider to take extra care to insure the message is not lost in transit due to a JMS provider failure. |
false |
|
Priority |
Number |
Defines the default Message#getJMSPriority to use when sending messages |
4 |
|
Time To Live |
Number |
Defines the default time the message is in the broker before it expires and is discarded |
0 |
|
Time To Live Unit |
Enumeration, one of:
|
A TimeUnit which qualifies the #timeToLive attribute. Defaults to MILLISECONDS |
MILLISECONDS |
|
Disable Message Id |
Boolean |
Defines the default value to use when producing messages, for disabling the Message#getJMSMessageID generation in the broker. Depending on the provider it may or may not have effect |
false |
|
Disable Message Timestamp |
Boolean |
Defines the default value to use, when producing messages, for disable Message#getJMSTimestamp generation in the broker. Depending on the provider it may or may not have effect. |
false |
|
Delivery Delay |
Number |
This is used to determine the Message delivery delay time which is calculated by adding the deliveryDelay value specified on the send method to the time the message was sent. Only used in JmsSpecification#JMS_2_0 |
||
Delivery Delay Unit |
Enumeration, one of:
|
A TimeUnit which qualifies the #deliveryDelay attribute. Defaults to MILLISECONDS |
MILLISECONDS |
|
Jms Type |
String |
A message JMSType identifier supplied by a client when a message is sent. |
Operations
Consume
<http://www.mulesoft.org/schema/mule/jms:consume>
Operation that allows the user to consume a single Message from a given Destination, extra configurations that are required based on the destination type and headers as Result#getAttributes.
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
The name of the configuration to use. |
x |
|
Destination |
String |
The name of the Destination from where the Message should be consumed |
x |
|
Consumer Type |
One of:
|
The type of the MessageConsumer that is required for the given destination, along with any |
||
Ack Mode |
Enumeration, one of:
|
The ConsumerAckMode to configure over the Message and Session |
||
Selector |
String |
A custom JMS selector for filtering the messages |
||
Content Type |
String |
The Message’s content content type |
||
Encoding |
String |
The Message’s content encoding |
||
Maximum Wait |
Number |
Maximum time to wait for a message before timing out |
10000 |
|
Maximum Wait Unit |
Enumeration, one of:
|
Time unit to use in the maximumWaitTime configurations |
MILLISECONDS |
|
Transactional Action |
Enumeration, one of:
|
The type of joining action that operations can take regarding transactions. |
JOIN_IF_POSSIBLE |
|
Target Variable |
String |
The name of a variable to store the operation’s output. |
Publish
<http://www.mulesoft.org/schema/mule/jms:publish>
Operation that allows the user to send a Message to a JMS Destination
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
The name of the configuration to use. |
x |
|
Destination |
String |
The name of the Destination where the Message should be sent |
x |
|
Destination Type |
Enumeration, one of:
|
The type of the Destination |
QUEUE |
|
Transactional Action |
Enumeration, one of:
|
The type of joining action that operations can take regarding transactions. |
JOIN_IF_POSSIBLE |
|
Body |
Any |
The body of the Message |
|
|
Jms Type |
String |
The JMSType header of the Message |
||
Correlation Id |
String |
The JMSCorrelationID header of the Message |
||
Send Content Type |
Boolean |
True if the body type should be sent as a Message property |
true |
|
ContentType |
String |
The content type of the body |
||
Send Encoding |
Boolean |
True if the body outboundEncoding should be sent as a Message property |
true |
|
Encoding |
String |
The outboundEncoding of the message’s body |
||
Reply To |
The JMSReplyTo header information of the Destination where this Message should be replied to |
|||
User Properties |
Object |
The custom user properties that should be set to this Message |
||
JMSX Properties |
The JMSX properties that should be set to this Message |
|||
Persistent Delivery |
Boolean |
If true, the Message is sent using the PERSISTENT JMSDeliveryMode |
||
Priority |
Number |
The default JMSPriority value to use when sending the message |
||
Time To Live |
Number |
Defines the default time the message is in the broker before it expires and is discarded |
||
Time To Live Unit |
Enumeration, one of:
|
Time unit to use in the timeToLive configurations |
||
Disable Message Id |
Boolean |
If true, the Message is flagged to avoid generating its MessageID |
||
Disable Message Timestamp |
Boolean |
If true, the Message is flagged to avoid generating its sent Timestamp |
||
Delivery Delay |
Number |
Only used by JMS 2.0. Sets the delivery delay to be applied to postpone the Message delivery |
||
Delivery Delay Unit |
Enumeration, one of:
|
Time unit to use in the deliveryDelay configurations |
Publish Consume
<http://www.mulesoft.org/schema/mule/jms:publish-consume>
Operation that allows the user to send a message to a JMS Destination and waits for a response either to the provided ReplyTo destination or to a temporary Destination created dynamically and headers as Result#getAttributes.
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
The name of the configuration to use. |
x |
|
Destination |
String |
The name of the Destination where the Message should be sent |
x |
|
Body |
Any |
The body of the Message |
|
|
Jms Type |
String |
The JMSType header of the Message |
||
Correlation Id |
String |
The JMSCorrelationID header of the Message |
||
Send Content Type |
Boolean |
True if the body type should be sent as a Message property |
true |
|
ContentType |
String |
The content type of the body |
||
Send Encoding |
Boolean |
True if the body outboundEncoding should be sent as a Message property |
true |
|
Encoding |
String |
The outboundEncoding of the message’s body |
||
Reply To |
The JMSReplyTo header information of the Destination where this Message should be replied to |
|||
User Properties |
Object |
The custom user properties that should be set to this Message |
||
JMSX Properties |
The JMSX properties that should be set to this Message |
|||
Persistent Delivery |
Boolean |
If true, the Message is sent using the PERSISTENT JMSDeliveryMode |
||
Priority |
Number |
The default JMSPriority value to use when sending the message |
||
Time To Live |
Number |
Defines the default time the message is in the broker before it expires and is discarded |
||
Time To Live Unit |
Enumeration, one of:
|
Time unit to use in the timeToLive configurations |
||
Disable Message Id |
Boolean |
If true, the Message is flagged to avoid generating its MessageID |
||
Disable Message Timestamp |
Boolean |
If true, the Message is flagged to avoid generating its sent Timestamp |
||
Delivery Delay |
Number |
Only used by JMS 2.0. Sets the delivery delay to be applied to postpone the Message delivery |
||
Delivery Delay Unit |
Enumeration, one of:
|
Time unit to use in the deliveryDelay configurations |
||
Ack Mode |
Enumeration, one of:
|
The Session ACK mode to use when consuming the message |
||
Maximum Wait |
Number |
Maximum time to wait for a message to arrive before timeout |
10000 |
|
Maximum Wait Unit |
Enumeration, one of:
|
Time unit to use in the maximumWaitTime configuration |
MILLISECONDS |
|
Content Type |
String |
The content type of the message body to be consumed |
||
Encoding |
String |
The encoding of the message body to be consumed |
||
Target Variable |
String |
The name of a variable to store the operation’s output. |
Ack
<http://www.mulesoft.org/schema/mule/jms:ack>
Allows the user to perform an ACK when the AckMode#MANUAL mode is elected while consuming the Message. As per JMS Spec, performing an ACK over a single Message automatically works as an ACK for all the Messages produced in the same JmsSession to a session of the current connection.
Recover Session
<http://www.mulesoft.org/schema/mule/jms:recover-session>
Allows the user to perform a session recover when the AckMode#MANUAL mode is elected while consuming the Message. As per JMS Spec, performing a session recover automatically redelivers all the consumed messages that had not been acknowledged before this recover.
Sources
Listener
<http://www.mulesoft.org/schema/mule/jms:listener>
JMS Subscriber for Destinations, allows to listen for incoming Messages
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
The name of the configuration to use. |
x |
|
Destination |
String |
The name of the Destination from where the Message should be consumed |
x |
|
Consumer Type |
One of:
|
The Type of the Consumer that should be used for the provided destination |
||
Ack Mode |
Enumeration, one of:
|
The Session ACK mode to use when consuming a message |
||
Selector |
String |
JMS selector to use for filtering incoming messages |
||
Inbound Content Type |
String |
The content type of the message body |
||
Inbound Encoding |
String |
The inboundEncoding of the message body |
||
Number Of Consumers |
Number |
The number of concurrent consumers to use to receive JMS Messages |
4 |
|
Transactional Action |
Enumeration, one of:
|
The type of beginning action that sources can take regarding transactions. |
NONE |
|
Redelivery Policy |
Defines a policy for processing the redelivery of the same message |
|||
Reconnection Strategy |
A retry strategy in case of connectivity errors. |
|||
Body |
Any |
The body of the Message |
|
|
Jms Type |
String |
The JMSType identifier header of the Message |
||
Correlation Id |
String |
The JMSCorrelationID header of the Message |
||
Send Content Type |
Boolean |
Whether or not the body content type should be sent as a property |
true |
|
ContentType |
String |
The content type of the message’s body |
||
Send Encoding |
Boolean |
Whether or not the body outboundEncoding should be sent as a Message property |
true |
|
Encoding |
String |
The encoding of the message’s body |
||
Reply To |
The destination where a reply to this Message should be sent |
|||
User Properties |
Object |
The custom user properties that should be set to this Message |
||
JMSX Properties |
The JMSX properties that should be set to this Message |
|||
Persistent Delivery |
Boolean |
Whether or not the delivery should be done with a persistent configuration |
||
Priority |
Number |
The default JMSPriority value to use when sending the message |
||
Time To Live |
Number |
Defines the default time the message is in the broker before it expires and is discarded |
||
Time To Live Unit |
Enumeration, one of:
|
Time unit to use in the timeToLive configurations |
||
Disable Message Id |
Boolean |
If true, the Message is flagged to avoid generating its MessageID |
||
Disable Message Timestamp |
Boolean |
If true, the Message is flagged to avoid generating its sent Timestamp |
||
Delivery Delay |
Number |
Only used by JMS 2.0. Sets the delivery delay to be applied to postpone the Message delivery |
||
Delivery Delay Unit |
Enumeration, one of:
|
Time unit to use in the deliveryDelay configurations |
Types
Redelivery Policy
Field | Type | Default Value |
---|---|---|
Max Redelivery Count |
Number |
|
Use Secure Hash |
Boolean |
|
Message Digest Algorithm |
String |
|
Id Expression |
String |
|
Object Store Ref |
String |
Reconnect
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Frequency |
Number |
How often in milliseconds to reconnect. |
||
Count |
Number |
How many reconnection attempts to make. |
||
blocking |
Boolean |
If false, the reconnection strategy runs in a separate, non-blocking thread. |
true |
Reconnect Forever
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Frequency |
Number |
How often in milliseconds to reconnect. |
||
blocking |
Boolean |
If false, the reconnection strategy runs in a separate, non-blocking thread. |
true |
JMS Destination
Field | Type | Default Value |
---|---|---|
Destination |
String |
|
Destination Type |
Enumeration, one of:
|
QUEUE |
JMSX Properties
Field | Type | Default Value |
---|---|---|
Jmsx User ID |
String |
|
Jmsx App ID |
String |
|
Jmsx Delivery Count |
Number |
|
Jmsx Group ID |
String |
|
Jmsx Group Seq |
Number |
|
Jmsx Producer TXID |
String |
|
Jmsx Consumer TXID |
String |
|
Jmsx Rcv Timestamp |
Number |
Pooling Profile
Field | Type | Default Value |
---|---|---|
Max Active |
Number |
|
Max Idle |
Number |
|
Max Wait |
Number |
|
Min Eviction Millis |
Number |
|
Eviction Check Interval Millis |
Number |
|
Exhausted Action |
Enumeration, one of:
|
|
Initialisation Policy |
Enumeration, one of:
|
|
Disabled |
Boolean |
Active MQ Connection Factory Configuration
Field | Type | Default Value |
---|---|---|
Broker Url |
String |
vm://localhost?broker.persistent=false&broker.useJmx=false |
Enable Xa |
Boolean |
false |
Initial Redelivery Delay |
Number |
1000 |
Redelivery Delay |
Number |
1000 |
Max Redelivery |
Number |
0 |
Topic Consumer
Field | Type | Default Value |
---|---|---|
Is Durable |
Boolean |
false |
Is Shared |
Boolean |
false |
No Local |
Boolean |
false |
Subscription Name |
String |
Default Caching
Field | Type | Default Value |
---|---|---|
Session Cache Size |
Number |
|
Cache Producers |
Boolean |
true |
Cache Consumers |
Boolean |
true |
JNDI Connection Factory
Field | Type | Default Value |
---|---|---|
Connection Factory Jndi Name |
String |
|
Lookup Destination |
Enumeration, one of:
|
NEVER |
Name Resolver Provider |
JNDI Name Resolver Provider
Field | Type | Default Value |
---|---|---|
Custom Jndi Name Resolver |
||
Name Resolver Builder |
JNDI Name Resolver Properties
Field | Type | Default Value |
---|---|---|
Jndi Initial Context Factory |
String |
|
Jndi Provider Url |
String |
|
Provider Properties |
Object |