JMS Receive Message to File
Description
Receive JMS Message(s) from file(s) on a remote JMS Server.
This Action can be used as a source of a Bind Link to another target
Action.
Parameters
Name | Mandatory | Default | Description |
---|---|---|---|
Jms Commit |
No |
False |
Commit on the session after receiving the message(s). |
Jms No Local |
No |
False |
All messages sent in the same connection cannot be seen by the consumer. Usefull to prevent consuming own messages sent in the same process. |
Jms Connection |
Yes |
JMS connection used for the command. This connection is automatically set on the action if a metadata link is added on this action. |
|
Jms Acknowledge Mode |
No |
SESSION_TRANSACTED |
The acknowledge mode is the way the consumer is going to inform the provider it has successfully received a message. |
Jms Initial Context Factory |
Yes |
The JNDI naming service use by the JMS Server. It depends on the JMS Provider used. |
|
Jms Connection Factory Name |
No |
Connection Factory |
Name of the connection Factory Used. |
Jms Login |
No |
Login/Username of the JMS Server to use. |
|
Jms Password |
No |
Encrypted password of the User. |
|
Jms Uncrypted Password |
No |
Uncrypted password of the User. |
|
Jms Provider Url |
Yes |
URL of the JMS server. The syntax of the url depends on the JMS Provider used. |
|
Jms Client Id |
No |
Set a custom client ID. Multiple processes running at the same time cannot have the same client Id. |
|
Jms Session Name |
No |
T1 |
Name of the JMS Session. |
Jms Server Properties |
No |
Server specific properties. |
|
Jms Subscriber Name |
No |
The name of the subscriber from who the messages will be retrieved. |
|
Jms Message Count |
No |
–1 |
Number of messages to wait for before completing the wait action. –1 means an infinite number of files. |
Jms Receive Timeout |
No |
1000 |
The time in ms to wait for the files. |
Out File Pattern |
Yes |
The pattern of the file(s) name to receive. |
|
Out File Dir |
No |
The directory which contains the message(s) received. |
|
Jms Destination Name |
Yes |
JMS Queue/Topic in which the message will be retrieved. |
|
Jms User Defined Properties |
No |
Get custom properties. |
|
Jms Message Content |
No |
Retrieve the message content. Usefull for binding for exemple. |
Passwords are encrypted using the encrypt <password> command
on the Runtime engine console (engine command line tool).
|
Jms No Local
The availability of this feature depends on the effective implementation in the JMS provider. For instance OpenJMS and OpenMQ are known not to implement it.
Jms Server Properties:
Jms Server Properties can be set with this parameter when receiving messages with the following syntax: <property name="propertyName" value="propertyValue"/>
It is automatically set on the action if a metadata link is added on
this action.
This can be specifically usefull with ActiveMQ for example, which
requires a property for each queue/topic.
It is set in the metadata by adding a property to the JMS Server
(Recommended) or with
-
<property name="queue.<queueName>" value="<queueName>"/>
-
<property name="topic.<topicName>" value="<topicName>"/>
.
Jms Message Content:
This parameter is used to specify a property to retrieve the message
content when using the action as the source of a bind link.
The syntax is:
<getMessageContent name="<nameWantedForBinding>" sqlType="<type>"/>
You can then use it in the target action with the syntax:
{nameWantedForBinding}:
Jms User Defined Properties:
This parameter is used to retrieve custom properties set when sending the JMS Message. The syntax is:
<getProperty name="<name>" type="<type>" sqlAlias="<alias>"/>
To see how to set custom properties, go to the Send Jms File Message Action documentation.
-
The type is optional and must be one of these: STRING (default), INT, BOOLEAN, DOUBLE, LONG, FLOAT, BYTE, SHORT
-
The sqlAlias is optional too and defaults to the name.
Using JmsReceiveMessage as the source of a bind link
JmsReceiveMessage can be used as the source of a Bind Link allowing to pass the properties of the message(s) that have been received directly to the target Action.
The columns that can be used on the target action are:
Column Name | Type | Description |
---|---|---|
JMSCorrelationID |
STRING |
ID of a message linked to the current message. |
JMSMessageID |
STRING |
Unique ID of the message. |
JMSNormalizedMessageID |
STRING |
Normalized ID of the JMS Message. Special characters are replaced with underscores. |
JMSType |
STRING |
Message type identifier (E.g. Bytes, Text, Stream, Map). |
JMSDeliveryMode |
STRING |
The delivery mode of the message, which can be one of the following: 1=NON_PERSISTENT, 2=PERSISTENT. Integer values may vary depending on the JMS Provider. |
JMSPriority |
INTEGER |
Priority of the message, from 0 to 9 (9 being the highest one). |
JMSExpiration |
LONG |
Expiration time, in milliseconds. |
JMSRedelivered |
BOOLEAN |
Indicate if the message has been redelivered at least once before. True=yes, False=no. |
JMSTimestamp |
LONG |
Timestamp when the message has been sent, expressed as the number of milliseconds since 01/01/1970. |
[userDefinedPropertyName] |
JMS User defined property retrieved through the Jms User Defined Properties parameter. |
|
[messageContentPropertyName] |
Content of the JMS Message, with the property name defined in Jms Message Content. |