JMS Connector
Verwendung
Der JMS (Java Message Service) Connector verbindet die INUBIT Process Engine mit einem JMS Provider.
Konnektortypen
Abhängig von seiner Konfiguration bietet der Konnektor folgende Funktionen:
-
Input Connector
Holt zeitgesteuert Nachrichten von einem JMS Provider und übergibt sie an das nachfolgende Modul im Technical Workflow.
-
Input Listener Connector
Wartet auf Nachrichten von einem JMS Provider. Sobald diese eingetroffen sind, startet der Connector den Technical Workflow, indem er sie an das nachfolgende Modul übergibt.
-
Medium Connector
Wird durch den Empfang einer Nachricht vom vorhergehenden Modul im Workflow gestartet, holt Nachrichten von einem JMS Provider ab und übergibt diese an das nachfolgende Modul im Workflow.
-
Medium Listener Connector
Wird durch den Empfang einer Nachricht vom vorhergehenden Modul im Workflow gestartet und wartet dann auf Nachrichten von einem JMS Provider. Sobald eine Nachricht eintrifft, wird diese an das nachfolgende Modul übergeben.
-
Output Connector
Sendet Nachrichten aus dem Technical Workflow an einen JMS Provider.
Zugriff auf JMS-basierten Queuing-Server konfigurieren
Übersicht
Für den Einsatz des JMS Connectors benötigen Sie einen JMS-basierten Applikationsserver mit Queuing-Schnittstelle wie z.B. den integrierten Tomcat-Server.
Sie können den Applikationsserver eines entfernten INUBIT oder einen beliebigen anderen JMS-basierten Queuing-Server nutzen.
Dazu benötigen Sie zusätzlich eine jar-Datei als Kommunikationsbrücke zwischen Ihrer INUBIT Process Engine und dem entfernten Queuing-Server.
So gehen Sie vor
-
\*.jar
-Datei anfordern:Wenn Sie auf einen beliebigen JMS-basierten Queuing-Servers zugreifen möchten, fordern Sie die Datei
*-provider.jar
von Ihrem JMS-Provider an.Um Konflikte zu vermeiden, stellen Sie sicher, dass keine
*-provider.jar
-Datei im Ordner/lib/system
existiert, z.B. von einer älteren Tomcat-Version! -
Kopieren Sie die Datei in das Verzeichnis
<inubit-installdir>/inubit/server/process_engine/webapps/ibis/WEB-INF/lib
. -
Starten Sie Tomcat neu.
-
Geben Sie beim Konfigurieren des JMS Connectors im Feld URL des JNDI-Servers die URL des entfernten Queuing-Servers ein. Siehe Dialog Verbindungskonfiguration
Konfigurieren eines asynchronen JMS-Listener-Connectors
Verwendung
Der JMS Connector kann als asynchroner Listener Connector konfiguriert werden, um Nachrichten von einem Apache ActiveMQ-Server abzurufen. Dieser Connector empfängt eine Nachricht mit einer eindeutigen ID, die von einem JMS Medium Connector gesendet wurde.
Nachdem der abfragende JMS Medium Connector die Nachricht mit der ID gesendet hat, hält er den aktuellen Abfrageworkflow an und wartet auf eine Antwort mit dieser ID. Nach dem Empfang der Antwortnachricht wird der Workflow fortgesetzt.
Wenn der Listener-Workflow beendet ist, wird der Antwortworkflow aufgerufen, um die Antwortnachricht zu generieren und sie an den aufrufenden JMS Connector zu senden.
Prerequisites
-
Sie haben Apache ActiveMQ installiert und gestartet.
-
Sie haben eine Apache-ActiveMQ-Queue erstellt, z.B.:
locationDaoQueue
. Dazu öffnen Sie den folgenden Link:https://<server>:<port>/admin/queues.jsp
-
Der JMS Listener Connector ist am Apache-ActiveMQ-Server registriert.
Als Beispiel zum Testen können Sie drei Workflows mit den folgenden Modulen erstellen:
Wenn der Abfrageworkflow startet, werden die folgenden Schritte ausgeführt:
-
Der XSLT Converter erstellt den Inhalt der Abfrage (Abfrageworkflow).
-
Der JMS Medium Connector erstellt die Abfrage.
-
Der JMS Medium Connector sendet die Abfrage zusammen mit einer eindeutigen Nachrichten-ID an den Apache-ActiveMQ-Server.
Der JMS Medium Connector hält den Abfrageworkflow an und wartet auf die Antwort.
-
Wenn die Abfrage in der konfigurierten Queue auf dem Apache-ActiveMQ-Server eingegangen ist, informiert dieser den JMS Listener Connector darüber.
-
Nachdem der JMS Listener Connector über die neue Abfrage informiert wurde, ruft er die Abfrage vom Apache-ActiveMQ-Server ab (Listener-Workflow).
-
Der JMS Listener Connector startet den Workflow, um die Abfrage zu bearbeiten.
-
Ein Workflow Connector startet den Antwortworkflow.
-
Der XSLT Converter erstellt den Inhalt für die Antwort (Antwortworkflow).
-
Der JMS Output Connector sendet die Antwort zusammen mit der Nachrichten-ID, die der JMS Medium Connector im Schritt 2 generiert hat.
-
Der JMS Medium Connector empfängt die Antwort (Nachricht plus korrekte Nachrichten-ID), und der Abfrageworkflow wird fortgesetzt.
Konfigurieren des Abfrageworkflows mit einem JMS Medium Connector
So gehen Sie vor
-
Melden Sie sich an der INUBIT Workbench an.
-
Erstellen Sie einen neuen Workflow.
-
Erstellen Sie einen XSLT Converter, um eine Ausgangsnachricht mit dem Abfrageinhalt zu generieren, z.B.:
<?xml version="1.0" encoding="UTF-8"?> <org.springframework.remoting.support.RemoteInvocation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <methodName>retrieveAll</methodName> <parameterTypes/> <arguments/> </org.springframework.remoting.support.RemoteInvocation>
-
Erstellen Sie einen JMS Medium Connector, um die Abfrage aus dem vom XSLT Converter erstellten Inhalt zu erzeugen.
-
Aktivieren Sie den Connector auf dem Register System Connector Eigenschaften.
-
Konfigurieren Sie die Verbindung zum Apache ActiveMQ auf dem Register Verbindungskonfiguration wie folgt.
-
Geben Sie die URL des JMS-Providers (derzeit wird nur Apache ActiveMQ unterstützt), z.B.:
tcp://localhost:61616
-
Geben Sie die folgende Naming Context Factory an:
com.inubit.ibis.plugins.jms.jndi.ActiveMQInitialContextFactoryWithTempQueueSupport
Andere Werte werden nicht unterstützt.
-
Geben Sie folgende Weitere JNDI Eigenschaften an:
queue.locationDaoQueue=locationDaoQueue
Der Name der Queue kann in Apache ActiveMQ konfiguriert werden. Öffnen Sie dazu die folgende URL:
https://<server>:<port>/admin/queues.jsp
.
-
-
Klicken Sie auf Fertig stellen, um das Modul zu speichern.
-
Publizieren Sie den Workflow.
Konfigurieren des Listener-Workflows mit einem JMS Input Connector
So gehen Sie vor
-
Erstellen Sie den Listener-Workflow.
-
Erstellen Sie einen JMS Listener Connector.
-
Konfigurieren Sie das Variablen-Mapping des JMS Input Connectors.
-
Erstellen Sie einen Workflow Connector.
-
Verbinden Sie den JMS Listener Connector mit dem Workflow Connector.
-
Publizieren Sie den Workflow.
Konfigurieren des JMS Listener Connectors
So gehen Sie vor
-
Melden SIe sich an der INUBIT Workbench an.
-
Erstellen Sie einen neuen Workflow.
-
Erstellen Sie einen JMS Listener Connector, um die Abfrage vom Apache ActiveMQ-Server abzuholen.
-
Wechseln Sie auf das Register System Connector Eigenschaften, wählen Sie im Bereich Grundkonfiguration als Connector Typ Input Connector.
-
Aktivieren Sie die Checkbox Auf Datenempfang warten (Listener Connector).
-
Aktivieren Sie den Connector.
-
Wechseln Sie auf das Register Verbindungskonfiguration und konfigurieren Sie die Verbindung zum Apache ActiveMQ server wie folgt.
-
Geben die URL des JMS-Providers (derzeit wird nur Apache ActiveMQ unterstützt), z.B.:
tcp://localhost:61616
-
Tragen Sie die folgende Naming Context Factory ein:
com.inubit.ibis.plugins.jms.jndi.ActiveMQInitialContextFactoryWithTempQueueSupport
Andere Werte werden nicht unterstützt.
-
Tragen Sie folgende Weitere JNDI Eigenschaften ein:
queue.locationDaoQueue=locationDaoQueue
Der Name der Queue kann in Apache ActiveMQ konfiguriert werden. Öffnen Sie dazu die folgende URL:
https://<server>:<port>/admin/queues.jsp
.
-
-
Klicken Sie auf Fertig stellen, um das Modul zu speichern.
-
Publizieren Sie den workflow.
Konfigurieren des Variablen-Mappings des JMS Listener Connectors
So gehen Sie vor
-
Melden Sie sich an der INUBIT Workbench an.
-
Öffnen Sie das Variablen-Mapping des JMS Listener Connectors im Listener-Workflow.
Siehe
-
Konfigurieren des JMS Listener Connectors
Erstellen Sie die folgenden Variablen:
-
Erstellen Sie das Mapping für die Moduleigenschaft
ContextProviderUrl
der Quelle auf die Zielvariablevar.JMSBrokerUrl
.Der Wert
tcp://localhost:61616
für die ModuleigenschaftContextProviderUrl
der Quelle wird automatisch gesetzt, abhängig vom Wert, den Sie im Feld URL des JMS-Providers auf dem Register Verbindungskonfiguration gesetzt haben.Wenn die Zielvariable
var.JMSBrokerUrl
nicht existiert, müssen Sie diese erstellen. Dazu klicken Sie auf das Icon Variable anlegen . Wählen Sie als Typxs:string
. -
Erstellen Sie das Mapping für die Quellvariable
ISProcessId
auf die ZielvariableISGlobalProcessId
.
-
Klicken Sie auf OK, um das Variablen-Mapping zu speichern.
Konfigurieren des Workflow Connectors zum Antwort-Workflow
Voraussetzungen
-
Sie haben den Antwort-Workflow erstellt.
-
Sie haben im Antwort-Workflow mindestens ein Startmodul erstellt.
-
Sie haben den Antwort-Workflow publiziert.
So gehen Sie vor
-
Melden Sie sich an der INUBIT Workbench an.
-
Öffnen Sie den Listener-Workflow zum Bearbeiten.
-
Erstellen, benennen und aktivieren Sie den Workflow Connector.
-
Wechseln Sie auf das Register Workflow-Auswahl und Eigenschaften und navigieren Sie zum Antwort-Workflow. Stellen Sie sicher, dass der Kommunikationsmodus wie folgt konfiguriert ist:
-
Der Synchron-Modus ist aktiviert.
-
Die Checkbox Fehlerbehandlung ist aktiviert.
-
Die Checkbox Bei Fehlerbehandlung Workflow-Aufruf-Stack beachten ist aktiviert.
-
-
Wechseln Sie auf das Register Module-Auswahl, klicken Sie das Modul im Antwort-Workflow an, das vom Listener-Workflow gestartet werden soll.
-
Klicken Sie auf Fertig stellen, um die Einstellungen zu speichern.
-
Publizieren Sie den Antwort-Workflow.
Konfigurieren des Antwort-Workflows mit einem JMS Output Connector
So gehen Sie vor
-
Erstellen Sie den Antwort-Workflow.
-
Erstellen Sie einen XSLT Converter.
-
Erstellen Sie einen JMS Output Connector.
-
Konfigurieren Sie das Variablen-Mapping des JMS Output Connectors.
-
Verbinden Sie den JMS Output Connector mit dem Workflow Connector.
-
Publizieren Sie den Workflow.
Konfigurieren des Antwort-XSLT Converter
So gehen Sie vor
-
Melden Sei sich an der INUBIT Workbench an.
-
Öffnen Sie den Antwort-Workflow zum Bearbeiten.
-
Erstellen Sei einen XSLT Converter, der eine Ausgabenachricht erstellen kann, die den Inhalt der Antwortnachricht enthält, z.B.:
<?xml version="1.0" encoding="UTF-8"?> <org.springframework.remoting.support.RemoteInvocationResult xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <value class="com.inubit.lcag.wfs.service.ProcessResult"> <ok>true</ok> <messageId>0</messageId> <followStatus>CLOSED</followStatus> <detailsNecessary>true</detailsNecessary> </value> </org.springframework.remoting.support.RemoteInvocationResult>
-
Klicken Sie auf Fertig stellen, um die Einstellungen zu speichern.
Konfigurieren des JMS Output Connectors
So gehen Sie vor
-
Melden Sei sich an der INUBIT Workbench an.
-
Öffnen Sie den Antwort-Workflow zum Bearbeiten.
-
Erstellen Sie einen JMS Output Connector, um eine Antwortnachricht aus dem vom Antwort-XSLT Converter erstellten Antwortinhalt zu erstellen.
-
Wechseln Sie auf das Register System Connector Eigenschaften und aktivieren Sie den Connector.
-
Wechseln Sie auf das Register Verbindungskonfiguration und konfigurieren Sie die Verbindung wie folgt:
Die Eigenschaften müssen gesetzt sein, werden aber durch das Variablen-Mapping überschrieben, siehe Konfigurieren des Variablen-Mappings des JMS Output Connectors.
-
Geben Sie die URL des JMS-Providers, z.B.:
tcp://localhost:61616
-
Geben Sie die folgende Naming Context Factory an:
com.inubit.ibis.plugins.jms.jndi.ActiveMQInitialContextFactoryWithTempQueueSupport
-
Geben Sie folgende Weitere JNDI Eigenschaften an:
queue.locationDaoQueue=locationDaoQueue
-
-
Klicken Sie auf Fertig stellen, um das Modul zu speichern.
-
Publizieren Sie den Workflow.
Konfigurieren des Variablen-Mappings des JMS Output Connectors
So gehen Sie vor
-
Melden Sei sich an der INUBIT Workbench an.
-
Öffnen Sie Variablen-Mapping des JMS Output Connector im Antwort-Workflow.
Siehe
-
Erstellen Sie die folgenden Variablen, um die Moduleigenschaften
QueueName
undJNDIProperties
zu überschreiben:-
Erstellen Sie das Mapping für einen Quell-XPath-Ausdruck auf die Zielvariable
QueueName
.-
Wählen Sie als Quelle XPath expression.
-
Geben Sie den folgenden XPath-Ausdruck ein:
substring-after($JMSReplyTo,'temp-queue://')
-
Wählen Sie als Ziel die Moduleigenschaft
QueueName
.
-
-
Erstellen Sie das Mapping für einen Quell-XPath-Ausdruck auf die Zielvariable
JNDIProperties
.-
Wählen Sie als Quelle XPath expression.
-
Geben Sie den folgenden XPath-Ausdruck ein:
concat('tempQueue.',substring-after($JMSReplyTo,'temp-queue://'),'=',substring-after($JMSReplyTo,'temp-queue://'))
-
Wählen Sie als Ziel die Moduleigenschaft
JNDIProperties
.
-
-
-
Klicken Sie auf OK, um das Variablen-Mapping zu speichern.
Dialogbeschreibungen
Dialog Verbindungskonfiguration
In diesem Dialog geben Sie die Eigenschaften an, die für Verbindungen zu einem JNDI (Java Naming and Directory Interface) Provider gebraucht werden. JMS benutzt das JNDI, um die benötigten Ressourcen zu finden.
Grundkonfiguration
-
Voreingestellte JNDI-Konfiguration benutzen
Zu markieren, wenn Sie die Datei
jndi.properties
in Ihrem Classpath haben und die dort angegebenen Eigenschaften verwenden möchten. -
URL/Prefix/Naming Context Factory
Standardwerte für die gängigsten JMS Provider:
-
MQSeries
URL =
ldap://<name>:389/<LDAP DN>
Prefix =com.ibm.jndi
NamingContextFactory =
com.sun.jndi.ldap.LdapCtxFactory
-
SonicMQ
ContextProviderUrl =
file://localhost/d:sonicmq
ContextUrlPrefixes =<empty>
NamingContextFactory`=
com.sun.jndi.fscontext.RefFSContextFactory
-
WebLogic
ContextProviderUrl =
t3://localhost :7001
ContextUrlPrefixes =<empty>
NamingContextFactory =
weblogic.jndi.WLInitialContextFactory
-
-
Weitere JNDI Eigenschaften
Geben Sie beliebige JNDI-Properties als Property-Wert-Paare an:
com.sonicsw.jndi.mfcontext.domain=Domain2 com.sonicsw.jndi.mfcontext.idleTimeout=6000
Mehrere Properties trennen Sie mit jeweils einem Leerzeichen.
Bei Problemen wenden Sie sich an den Systemadministrator Ihres JMS Providers!
Mitteilungstyp
-
Nachrichten können in folgenden Formaten versendet/empfangen werden:
-
TextMessage
Der Payload sind Daten, die als Zeichenkette gespeichert wurden. Zum Austausch von einfachen Textnachrichten und komplexer Zeichendaten wie XML-Dokumente.
-
-
ObjectMessage
Überträgt als Payload ein serialisierbares Java Object. Zum Austausch von Java-Objekten.
-
BytesMessage
Der Payload wird als Byte-Array gespeichert. Nützlich für den Austausch von Daten im nativen Format einer Applikation und für den Fall, dass JMS als Transportmittel zwischen zwei Systemen verwendet wird, bei denen der JMS Client den Payload-Typ der Nachrichten nicht kennt.
-
StreamMessage
Sequenz primitiver Java-Typen. Das Nachrichtenobjekt überwacht deren Anordnung und Typen im Strom. Datenkonvertierungsbeschränkungen sind gültig, daher ist es z.B. ein Fehler, wenn eine JMS-Applikation versucht, einen Double-Wert als short-Wert zu lesen.
Beispiel: 21ABCDEFGH32.345
Besteht aus folgenden drei Feldern:
-
Integer: 21
-
String: ABCDEFGH
-
Float: 32.345
Wenn die Datenstruktur unbekannt ist, dann kann die generische Methode
readObject()
verwendet werden, um das nächste Objekt im Strom zurückzugeben.Wenn die Datenstruktur bekannt ist, dann kann der JMS Client den Objekttyp, auf den zugegriffen werden soll, angeben.
-
MapMessage
Der Payload einer MapMessage wird als eine Menge von Name/Werte-Paaren gespeichert. Der Name ist eine Zeichenkette und der Wert ist typisiert. Wird verwendet, um Schlüssel-Werte zu übertragen, die sich von einer Nachricht zur anderen ändern können.
Beispiel:
NumberOfCopies:5
Dabei ist NumberOfCopies der Schlüssel und 5 der Wert.Die Daten werden über die Methode
getMapNames()
aufgerufen, welche ein Java Enumeration-Objekt zurückgibt. Mit der MethodehasMoreElements()
können Sie über eine MapMessage iterieren. -
Zeichensatzkodierung
Wählen Sie eine Kodierung aus der Liste aus.
Authentifizierung
-
Anonymer Login
Zu markieren, wenn der JMS Provider keine Authentifizierung vom Client erwartet.
-
Statische Zugangsdaten verwenden
-
Login/Passwort
Anmeldedaten des Clients am JMS Provider.
-
-
Aus dem Credentials Manager auswählen
Für die Authentifizierung können Sie auch Zugangsdaten verwenden, die im Credentials Manager verwaltet werden. Siehe Credentials Manager für die Authentifizierung verwenden.
Sicherheit
-
Sicherheitsmanager benutzen
Zum Aktivieren des Security Managers.
Security Manager sind abhängig vom eingesetzten JMS/JNDI Provider und sollten nur verwendet werden, wenn sie laut den Vorgaben Ihres JMS Providers nötig sind.
-
Security Manager
Name der Klasse, in welcher der Security Manager implementiert ist. Diese Klasse ist in den
*.jar
-Dateien Ihres JMS-Clients enthalten.
Dialog Kommunikationsmodell
In diesem Dialog haben Sie folgende Optionen:
Kommunikationsmodell
Wählen Sie eines der Modelle:
-
Publish/Subscribe
Dieses Modell wird für allgemeine Broadcast-Applikationen verwendet, bei denen eine Nachricht viele Empfänger hat:
Ein Nachrichten-Lieferant versendet Nachrichten zu einem Topic an alle Empfänger, die sich vorher an dem Topic eingeschrieben haben.
Empfänger, die zum Zeitpunkt des Versendens nicht eingeschrieben waren, erhalten keine Nachrichten.
Sonderfall Dauerhafte Einschreibung:
Die Empfänger müssen sich einschreiben, aber nicht ständig aktiv auf Nachrichten warten, sondern können sich diese später abholen.
-
Point-to-Point
Dieses Modell wird verwendet, wenn Nachrichten nur einen Empfänger haben:
Die Nachrichten, die ein Nachrichten-Lieferant schickt, werden first in/first out in eine Nachrichten-Queue gestellt.
Nachrichten-Empfänger können die Nachrichten der Reihe nach zu einem beliebigen, späteren Zeitpunkt aus der Queue abholen.
Einstellungen
Die folgenden Optionen werden angezeigt, wenn Sie als Kommunikationsmodell Point-to-Point gewählt haben.
-
Name der Queue
Der Queue Name bezeichnet ein Objekt, das vom JMS Provider erzeugt und beim JNDI-Server registriert wurde. Der JMS Connector durchsucht den JNDI-Server nach dem angegebenen Queue Name und erhält eine Referenz auf das Objekt.
-
Klasse für Verbindungsaufbau
Name der Connection Factory. Die Connection Factory ist das Objekt, das ein Client benutzt, um eine Verbindung mit dem JMS Provider zu erstellen.
Das Objekt wurde von dem JMS Provider erzeugt und beim JNDI-Server registriert. Der JMS Connector durchsucht den JNDI-Server nach der angegebenen Klasse und erhält eine Referenz auf das registrierte Objekt.
-
Synchroner Modus
Wenn markiert, dann werden Nachrichten vom JMS-Server synchron empfangen, d.h. der Eingang einer Nachricht startet den Workflow, der bis zum Ende durchlaufen wird, bevor die nächste Nachricht empfangen werden kann. Die laufende Workflow-Verarbeitung blockt den Empfang neuer Nachrichten und erst der beendete Workflow gibt das Signal zum Empfang und der Verarbeitung der nächsten Nachricht in der Queue. Der JMS-Server kann auch mehrere Nachrichten parallel und synchron bearbeiten; siehe die Option Anzahl der einzulesenden Nachrichten.
Falls nicht markiert, läuft der Nachrichten-Empfang asynchron ab und Nachrichten werden an den Workflow übergeben, sobald sie eingetroffen sind.
-
Anzahl der einzulesenden Nachrichten
Wenn der synchrone Modus markiert ist, legt die Anzahl der einzulesenden Nachrichten fest, wie viele Nachrichten parallel und synchron aus der Queue abgeholt und verarbeitet werden können (der Standardwert ist 1). Dies geschieht in Abhängigkeit von der am Workflow eingestellten Anzahl paralleler Prozesse.
Die folgenden Optionen werden angezeigt, wenn Sie als Kommunikationsmodell Publish/Subscribe gewählt haben.
-
Topic-Name
Ein Topic ist eine Zeichenkette, welche die Art der Daten beschreibt, die in einem Publish/Subscribe-System publiziert sind.
Der Topic-Name bezeichnet ein Objekt, das vom JMS Provider erzeugt und beim JNDI-Server registriert wurde. Der JMS Connector durchsucht den JNDI-Server nach dem angegebenen Topic-Namen und erhält eine Referenz auf das Objekt.
-
Klasse für den Verbindungsaufbau
Name einer Connection Factory. Diese ConnectionFactory ist ein Objekt, das ein Client benutzt, um eine Verbindung mit dem JMS Provider zu erstellen.
Das Objekt wird vom JMS Provider erzeugt beim JNDI-Server registriert. Der JMS Connector durchsucht den JNDI-Server nach dem angegebenen Namen und erhält eine Referenz auf das registrierte Objekt.
-
Topic No Local
Blockiert den Empfang von Nachrichten, die über die eigene Verbindung ausgeliefert wurden.
-
Message Acknowledgment
Zur Auswahl des Kontroll-Levels bei der Bestätigung von Nachrichten. Es gibt folgenden Bestätigungsarten:
-
AUTO_ACKNOWLEDGE: Die JMS-Sitzung bestätigt automatisch, dass der Client die Nachricht erhalten hat. Entweder wenn der Client erfolgreich einen Aufruf zum Nachrichtenerhalt durchgeführt hat oder wenn der Aufruf des Listeners zum Empfang einer Nachrichte geführt hat.
-
CLIENT_ACKNOWLEDGE: Bestätigung auf Session-Ebene. Ein Client bestätigt eine Nachricht durch den Aufruf der Bestätigungsmethode der Nachricht.
-
DUPS_OK_ACKNOWLEDGE: Weist die JMS Session an, die Auslieferung einer Nachricht lazy zu bestätigen. Das führt im Allgemeinen zur Auslieferung einer weiteren Kopie der Nachricht, wenn der JMS Provider nicht direkt bestätigt.
Sollte nur von Clients verwendet werden, die Nachrichtenkopien zulassen.
-
Dauerhafte Subskription
(Nur, wenn das Kommunikationsmodell Publish/Subscribe gewählt ist)
Die dauerhafte Subskription ist ein Sonderfall des Publish-Subscribe-Kommunikationsmodells. Empfänger müssen sich beim JMS Provider einschreiben, aber nicht ständig auf Nachrichten warten. Stattdessen können sie diese später abholen.
-
Subskriptions-ID: ID des Clients für die Verbindung
-
Login: Nutzername des Clients
-
Passwort: Passwort
Verbindungstest
-
Verbindung testen
Zum Testen, ob die Verbindung mit Ihren Angaben erfolgreich aufgebaut werden kann.
Dialog Nachrichten-Selektor
In diesem Dialog haben Sie folgende Optionen:
Nachrichten-Selektor
Nachrichten-Selektor werden genutzt, um gezielt Nachrichten aus einem Topic oder einer Queue auszuwählen. Wenn ein Nachrichten-Selektor angegeben ist, dann werden nur Nachrichten an den Client übergeben, deren Header und Properties zu dem Nachrichten-Selektor passen.
Nachrichten-Selektoren können nicht auf Werte im Nachrichten-Body zugreifen! |
Ein Nachrichten-Selektor ist ein bedingter Ausdruck bestehend aus einem Identifier und einem Operator gefolgt von einem Literal. Die folgende Tabelle zeigt, wie Nachrichten-Selektoren konstruiert werden:
Element | Gültige Werte |
---|---|
Identifier |
Property oder Header-Feldreferenz |
Operatoren |
AND, OR, LIKE, BETWEEN, =, <>, <, >, ⇐, >=, IS NULL, IS NOT NULL |
Literale |
|
Dialog Zusätzliche Eigenschaften im JMS Connector
In diesem Dialog können Sie Eigenschaften selbst definieren. Diese Eigenschaften können Sie nutzen, um die Kompatibilität zu anderen Nachrichtensystemen herzustellen oder Nachrichten-Selektoren zu definieren.
Um eine Eigenschaft hinzuzufügen, klicken Sie auf den Button Eigenschaften hinzufügen. Füllen Sie im angezeigten Dialog die Eingabefelder Name, Typ und Wert.
Optionale Konfigurationsschritte
Diese Schritte können für einige JMS-Provider optional und nur für wenige von ihnen notwendig sein.
-
*.jar-Datei anfordern: Wenn Sie auf einen beliebigen JMS-basierten Queuing-Servers zugreifen möchten, fordern Sie die Datei
*-provider.jar
von Ihrem JMS-Provider an. -
Kopieren Sie die Datei in das Verzeichnis
<inubit-installdir>/server/process_engine/webapps/ibis/WEB-INF/lib
. -
Starten Sie Tomcat neu.