Skip to main content
Skip table of contents

JMS

The adapter exchanges messages via the Java Message Service queue of a message-oriented middleware product that serves as a JMS provider. The adapter supports sending and receiving messages to and from the JMS queue and can publish messages to JMS topics and subscribe to JMS topics.

Properties

Delete

(no function)

File name

(no function)

I/O Mode

(no function)

Operation

Determines which operation is performed on the messages in the JMS queue.

Possible values:

  • Send: Sends data from the previous process step to the JMS queue.

  • Receive: Reads JMS message into the process

  • List: Outputs the number of messages in the queue as an XML document (if parameter toXML is set, the header information of the messages is output instead).

Parameters

object_name

Name of the JMS queue or JMS topic under which it is registered in the JNDI provider (Java Naming and Directory Interface).

Possible values: Any string (e.g. queue/A)

connection_factory

Name of the JMS Connection Factory under which the message queue is registered in the JNDI (Java Naming and Directory Interface).

Possible values: Any valid string (e.g. java:/JmsXA)

JNDIProperties

Additional properties of the JNDI provider

Possible values: Any string with properties, separated by semicolons if there are several properties (e.g. java.naming.factory.initial=org.jnp.inter faces.Naming ContextFactory;java.naming.provi der.url=localhost:1099)

approach

Used messaging channel type

Possible values:

  • topic: Point-to-point connection between a sender and a receiver, who normally removes the message from the message channel after receiving it.

  • queue: Topic-oriented publish/subscribe connection, where messages remain in the message channel to be retrieved by other recipients until the messages are replaced or expire (default).

timeout

Time limit for establishing connection in milliseconds

Possible values:

  • Any integer

  • 0: no restriction; Caution: If the queue is empty, then the process "stands" with this setting!

  • 10000: Wait maximum 10 seconds (default)

filter

Filters when receiving messages via JMS message selectors

Possible values: Any string with properties according to the pattern <Property1>=<Value1>;<Property2>=<Value2> (e.g. JMSPriority=5)

msg_property

Header attributes of the JMS message when sending messages

Possible values: Any string with properties according to the pattern <property1>=<value1>;<property2>=<value2>.

headers_from_XML

Use header information of the input document

Possible values:

  • yes: use header information

  • no: Do not use header information (default)

transacted

Execute this process step in a local transaction

Possible values:

  • yes: Execute as local transaction

  • no: Do not execute a local transaction (default)

ack_mode

Acknowledgement mode (this regulates the handling of acknowledgements of receipt)

Possible values:

  • AUTO_ACKNOWLEDGE|Auto acknowledge: Automatically acknowledge receipt of messages

  • CLIENT_ACKNOWLEDGE|Client acknowledge: Acknowledge receipt by a client.

  • DUPS_OK_ACKNOWLEDGE|Dups ok acknowledge: Allow multiple reception of a message

msg_priority

Message priority (9 has the highest priority)

Possible values:

  • Any integers from 0-9

  • 4: Priority 4 (standard)

msg_expiration_time

Validity period of messages (lifetime) in milliseconds; after the validity has expired, the message is obsolete and is automatically removed from the queue

Possible values:

  • Any positive integer

  • 0: no validity restriction (default)

msg_type

JMS message type

Possible values:

  • text: Exchange data as character strings (e.g. as XML documents) (standard)

  • byte: byte field group for data exchange in native/binary formats

  • map: Send JMS MapMessages (Key-Value-Pairs)
subscription_name

Name of the subscription for permanent message subscriptions (if parameter approach has been set to topic).

Possible values: Any string

durable_subscription

Dauer des JMS-Subscriptions

Possible values:

  • yes: obtain permanently

  • no: obtain temporarily

ClientID

Name of the JMS-Clients

Possible values: Any string

toXML

Output the JMS message including header information as an XML document (if the Operation property is set to Receive, the character set is adopted unchanged; Text/XML is then used as the MIME type). If you do not set the parameter toXML, then byte, stream or object messages are declared as MIME type Application/Octet-stream; text messages, on the other hand, are UTF-8 encoded and declared with MIME type Text/Plain.

Possible values:

  • yes: Output XML document

  • no: Do not output an XML document (default)

base64

Output JMS message Base64-encoded (if parameter toXML is set)

Possible values:

  • yes: Output message Base64-encoded

  • no: Do not output a Base64-encoded message (default)

JMSReplyTo

Response message destination queue

JMSCorrelationID

ID of the message to which the response refers (different parts of a message have the same JMSCorrelationID).

login

Username for the JMS

password

Password for the JMS

The JMS queues available by default in the application server are not suitable for productive use because of the database system used (HSQLDB, Derby). Despite transactional processing, data can be lost with these. Only use database systems that can be used productively (Oracle, MSSQL etc.) for message persistence of JMS queues; see http://docs.jboss.org/jbossas/docs/Server_Configuration_Guide/4/html/apbs04.html.

Status values

1The operation was executed successfully.
0

The operation was executed successfully, but without any result.

-1The operation failed due to a technical error.

Input: msg:type map

XML
<?xml version="1.0" encoding="UTF-8"?>
<RootElement>
	<Entry name="firstKey">Blub</Entry>
	<Entry name="b" type="byte">1</Entry>
	<Entry name="s" type="short">2</Entry>
	<Entry name="i" type="integer">3</Entry>
	<Entry name="l" type="long">4</Entry>
	<Entry name="f" type="float">5.5</Entry>
	<Entry name="d" type="double">6.6</Entry>
	<Entry name="bool" type="boolean">true</Entry>
	<Entry name="c" type="character">z</Entry>
	<Entry name="blob" type="bytearray">aaaa</Entry>
</RootElement> 

Input: msg:type map und headers_from_XML

XML
<?xml version="1.0" encoding="UTF-8"?>
<messages>
	<message type="map">
		<headers>
			<header>
				<name>myFirstHeader</name>
				<value>the first</value>
			</header>
			<header>
				<name>mySecondHeader</name>
				<value>the second</value>
			</header>
		</headers>
		<body>
			<Entry name="firstKey">Blub</Entry>
			<Entry type="byte" name="b">1</Entry>
			<Entry type="short" name="s">2</Entry>
			<Entry type="integer" name="i">3</Entry>
			<Entry type="long" name="l">4</Entry>
			<Entry type="float" name="f">5.5</Entry>
			<Entry type="double" name="d">6.6</Entry>
			<Entry type="boolean" name="bool">true</Entry>
			<Entry type="character" name="c">z</Entry>
			<Entry type="bytearray" name="blob">aaaa</Entry>
		</body>
	</message>
</messages>

Output: msg:type map

XML
<?xml version="1.0" encoding="UTF-8"?>
<MapMessage>
	<Entry name="b" type="Byte">1</Entry>
	<Entry name="blob" encoding="base64" type="ByteArray">aaaa</Entry>
	<Entry name="s" type="Short">2</Entry>
	<Entry name="c" type="Character">z</Entry>
	<Entry name="bool" type="Boolean">true</Entry>
	<Entry name="d" type="Double">6.6</Entry>
	<Entry name="f" type="Float">5.5</Entry>
	<Entry name="firstKey" type="String">Blub</Entry>
	<Entry name="i" type="Integer">3</Entry>
	<Entry name="l" type="Long">4</Entry>
</MapMessage>

Output: msg:type map und headers_to_XML

XML
<?xml version="1.0" encoding="UTF-8"?>
<document>
	<headers>
		<header>
			<name>mySecondHeader</name>
			<value>the second</value>
		</header>
		<header>
			<name>JMSMessageID</name>
			<value>ID:4bedf9a6-05a1-11e7-bf59-eba4f4962570</value>
		</header>
		<header>
			<name>JMSXDeliveryCount</name>
			<value>1</value>
		</header>
		<header>
			<name>myFirstHeader</name>
			<value>the first</value>
		</header>
	</headers>
	<body>
		<MapMessage>
			<Entry name="b" type="Byte">1</Entry>
			<Entry name="blob" encoding="base64" type="ByteArray">aaaa</Entry>
			<Entry name="s" type="Short">2</Entry>
			<Entry name="c" type="Character">z</Entry>
			<Entry name="bool" type="Boolean">true</Entry>
			<Entry name="d" type="Double">6.6</Entry>
			<Entry name="f" type="Float">5.5</Entry>
			<Entry name="firstKey" type="String">Blub</Entry>
			<Entry name="i" type="Integer">3</Entry>
			<Entry name="l" type="Long">4</Entry>
		</MapMessage>
	</body>
</document>
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.