Skip to main content
Skip table of contents

JMS

Der Adapter tauscht Nachrichten über die Java Message Service-Warteschlange eines nachrichtenorientierten Middleware-Produkts aus, das als JMS-Provider dient. Der Adapter unterstützt das Senden und Empfangen von Nachrichten von und zur JMS-Warteschlange und kann Nachrichten in JMS-Topics publizieren und JMS-Topics abonnieren.

Eigenschaften (Properties)

Delete

(keine Funktion)

File name

(keine Funktion)

I/O Mode

(keine Funktion)

Operation

Bestimmt, welche Operation mit den Nachrichten der JMS-Warteschlange durchgeführt wird.

Mögliche Werte:

  • Send: Sendet Daten aus dem vorangegangen Prozess-Schritt an die JMS-Warteschlange

  • Receive: Liest JMS-Nachricht in den Prozess ein

  • List: Gibt die Zahl der Nachrichten in der Warteschlange als XML-Dokument aus (falls Parameter toXML gesetzt ist, werden stattdessen die Header-Informationen der Nachrichten ausgegeben).

Parameter

object_name

Name der JMS-Warteschlange oder des JMS-Topics, unter dem es im JNDI-Provider (Java Naming and Directory Interface) registriert ist

Mögliche Werte: Beliebige Zeichenkette (z. B. queue/A)

connection_factory

Name der JMS Connection Factory , unter der die Nachrichtenwarteschlange im JNDI (Java Naming and Directory Interface) registriert ist

Mögliche Werte: Beliebige gültige Zeichenkette (z. B. java:/JmsXA)

JNDIProperties

Zusätzliche Eigenschaften des JNDI-Providers

Mögliche Werte: Beliebige Zeichenkette mit Eigenschaften, bei mehreren Eigenschaften durch Semikolon getrennt (z. B. java.naming.factory.initial=org.jnp.inter faces.Naming ContextFactory;java.naming.provi der.url=localhost:1099)

approach

Verwendeter Nachrichtenkanaltyp

Mögliche Werte:

  • topic: Punkt-zu-Punkt-Verbindung zwischen einem Sender und einem Empfänger, welcher nach Erhalt die Nachricht normalerweise aus dem Nachrichtenkanal entfernt

  • queue: Themenorientierte Publizieren/Abonnieren-Verbindung, bei der Nachrichten im Nachrichtenkanal erhalten bleiben, um auch von anderen Empfängern abgerufen werden zu können, bis die Nachrichten ersetzt werden oder verfallen (Standard)

timeout

Zeitbeschränkung für den Verbindungsaufbau in Millisekunden

Mögliche Werte:

  • Beliebige ganze Zahl

  • 0: keine Beschränkung; Vorsicht: Wenn die Warteschlange leer ist, dann "steht" der Prozess mit dieser Einstellung!

  • 10000: Maximal 10 Sekunden warten (Standard)

filter

Filtert beim Empfangen von Nachrichten über JMS-Nachrichtenselektoren

Mögliche Werte: Beliebige Zeichenkette mit Eigenschaften nach dem Muster <Eigenschaft1>=<Wert1>;<Eigenschaft2>=<Wert2> (z. B. JMSPriority=5)

msg_property

Header-Attribute der JMS-Nachricht beim Senden von Nachrichten

Mögliche Werte: Beliebige Zeichenkette mit Eigenschaften nach dem Muster <Eigenschaft1>=<Wert1>;<Eigenschaft2>=<Wert2>

headers_from_XML

Header-Informationen des Input-Dokuments verwenden

Mögliche Werte:

  • ja: Header-Informationen verwenden

  • nein: Keine Header-Informationen verwenden (Standard)

transacted

Diesen Prozess-Schritt in einer lokalen Transaktion ausführen

Mögliche Werte:

  • ja: Als lokale Transaktion ausführen

  • nein: Keine lokale Transaktion ausführen (Standard)

ack_mode

Acknowledgement-Modus (dieser regelt den Umgang mit Empfangsbestätigungen)

Mögliche Werte:

  • AUTO_ACKNOWLEDGE|Auto acknowledge: Automatisch den Empfang von Nachrichten bestätigen

  • CLIENT_ACKNOWLEDGE|Client acknowledge: Empfang durch einen Client bestätigen

  • DUPS_OK_ACKNOWLEDGE|Dups ok acknowledge: Mehrfaches Empfangen einer Nachricht erlauben

msg_priority

Nachrichten-Priorität (9 hat die höchste Priorität)

Mögliche Werte:

  • Beliebige ganze Zahlen von 09

  • 4: Priorität 4 (Standard)

msg_expiration_time

Gültigkeitsdauer von Nachrichten (Lebensdauer) in Millisekunden; nach dem Ablauf der Gültigkeit ist die Nachricht obsolet und wird automatisch aus der Warteschlange entfernt

Mögliche Werte:

  • Beliebige positive ganze Zahl

  • 0: keine Gültigkeitsbeschränkung (Standard)

msg_type

JMS-Nachrichtentyp

Mögliche Werte:

  • text: Daten als Zeichenketten (etwa als XML-Dokumente) austauschen (Standard)

  • byte: Byte-Feldgruppe für Datenaustausch in nativen/binären Formaten

  • map: JMS-MapMessages (Key-Value-Paare) versenden
subscription_name

Name des Abonnements für dauerhafte Nachrichten-Abonnements (wenn Parameter approach auf topic gesetzt wurde)

Mögliche Werte: Beliebige Zeichenkette

durable_subscription

Dauer des JMS-Abonnements

Mögliche Werte:

  • ja: dauerhaft beziehen

  • nein: temporär beziehen

ClientID

Name des JMS-Clients

Mögliche Werte: Beliebige Zeichenkette

toXML

JMS-Nachricht inklusive Header-Informationen als XML-Dokument ausgeben (wenn Eigenschaft Operation auf Receive gesetzt wurde, dann wird der Zeichensatz unverändert übernommen; als MIME-Type wird dann Text/XML verwendet). Wenn Sie den Parameter toXML nicht setzen, dann werden Byte-,Stream- oder Object-Nachrichten als MIME-Typ Application/Octet-stream deklariert; Text-Nachrichten werden hingegen UTF-8-kodiert und mit MIME-Typ Text/Plain deklariert.

Mögliche Werte:

  • ja: XML-Dokument ausgeben

  • nein: Kein XML-Dokument ausgeben (Standard)

base64

JMS-Nachricht Base64-kodiert ausgeben (wenn Parameter toXML gesetzt ist)

Mögliche Werte:

  • ja: Nachricht Base64-kodiert ausgeben

  • nein: Keine Base64-kodierte Nachricht ausgeben (Standard)

JMSReplyTo

Ziel-Warteschlange der Antwort-Nachricht

JMSCorrelationID

ID der Nachricht, auf die sich die Antwort bezieht (verschiedene Teile einer Nachricht besitzen dieselbe JMSCorrelationID)

login

Benutzername für den JMS

password

Passwort für den JMS

Die im Applikations-Server standardmäßig verfügbaren JMS-Warteschlangen sind wegen des verwendeten Datenbanksystems (HSQLDB, Derby) nicht für den Produktiveinsatz geeignet. Trotz transaktionaler Verarbeitung können mit diesen Daten verloren gehen. Verwenden Sie ausschließlich produktiv einsetzbare Datenbanksysteme (Oracle, MSSQL etc.) zur Nachrichten-Persistierung von JMS-Warteschlangen; siehe http://docs.jboss.org/jbossas/docs/Server_Configuration_Guide/4/html/apbs04.html.

Statuswerte

1Die Operation wurde erfolgreich ausgeführt.
0

Die Operation wurde erfolgreich ausgeführt, jedoch ohne Ergebnis.

-1Die Operation ist aufgrund eines technischen Fehlers fehlgeschlagen.

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.