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.

module guide 1089 1

Sie können den Applikationsserver einer entfernten INUBIT Suite 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

  1. \*.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!

  2. Kopieren Sie die Datei in das Verzeichnis <inubit-installdir>/server/process_engine/webapps/ibis/WEB-INF/lib.

  3. Starten Sie Tomcat neu.

  4. 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:

module guide 1090 0

Wenn der Abfrageworkflow startet, werden die folgenden Schritte ausgeführt:

  1. Der XSLT Converter erstellt den Inhalt der Abfrage (Abfrageworkflow).

  2. Der JMS Medium Connector erstellt die Abfrage.

  3. 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.

  4. Wenn die Abfrage in der konfigurierten Queue auf dem Apache-ActiveMQ-Server eingegangen ist, informiert dieser den JMS Listener Connector darüber.

  5. Nachdem der JMS Listener Connector über die neue Abfrage informiert wurde, ruft er die Abfrage vom Apache-ActiveMQ-Server ab (Listener-Workflow).

  6. Der JMS Listener Connector startet den Workflow, um die Abfrage zu bearbeiten.

  7. Ein Workflow Connector startet den Antwortworkflow.

  8. Der XSLT Converter erstellt den Inhalt für die Antwort (Antwortworkflow).

  9. Der JMS Output Connector sendet die Antwort zusammen mit der Nachrichten-ID, die der JMS Medium Connector im Schritt 2 generiert hat.

  10. 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

  1. Melden Sie sich an der INUBIT Workbench an.

  2. Erstellen Sie einen neuen Workflow.

  3. 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>
  4. Erstellen Sie einen JMS Medium Connector, um die Abfrage aus dem vom XSLT Converter erstellten Inhalt zu erzeugen.

  5. Aktivieren Sie den Connector auf dem Register System Connector Eigenschaften.

  6. Konfigurieren Sie die Verbindung zum Apache ActiveMQ auf dem Register Verbindungskonfiguration wie folgt.

    module guide 1091 0
    • 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.

  7. Klicken Sie auf Fertig stellen, um das Modul zu speichern.

  8. Publizieren Sie den Workflow.

Konfigurieren des Listener-Workflows mit einem JMS Input Connector

So gehen Sie vor

  1. Erstellen Sie den Listener-Workflow.

  2. Erstellen Sie einen JMS Listener Connector.

  3. Konfigurieren Sie das Variablen-Mapping des JMS Input Connectors.

  4. Erstellen Sie einen Workflow Connector.

  5. Verbinden Sie den JMS Listener Connector mit dem Workflow Connector.

  6. Publizieren Sie den Workflow.

Konfigurieren des JMS Listener Connectors

So gehen Sie vor

  1. Melden SIe sich an der INUBIT Workbench an.

  2. Erstellen Sie einen neuen Workflow.

  3. Erstellen Sie einen JMS Listener Connector, um die Abfrage vom Apache ActiveMQ-Server abzuholen.

  4. Wechseln Sie auf das Register System Connector Eigenschaften, wählen Sie im Bereich Grundkonfiguration als Connector Typ Input Connector.

  5. Aktivieren Sie die Checkbox Auf Datenempfang warten (Listener Connector).

  6. Aktivieren Sie den Connector.

  7. Wechseln Sie auf das Register Verbindungskonfiguration und konfigurieren Sie die Verbindung zum Apache ActiveMQ server wie folgt.

    module guide 1093 2

    • 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.

  8. Klicken Sie auf Fertig stellen, um das Modul zu speichern.

  9. Publizieren Sie den workflow.

Konfigurieren des Variablen-Mappings des JMS Listener Connectors

So gehen Sie vor

  1. Melden Sie sich an der INUBIT Workbench an.

  2. Öffnen Sie das Variablen-Mapping des JMS Listener Connectors im Listener-Workflow.

    Siehe

    • Workflow-Variablen und Mappings

    • Konfigurieren des JMS Listener Connectors

      Erstellen Sie die folgenden Variablen:

      module guide 1094 1
    • Erstellen Sie das Mapping für die Moduleigenschaft ContextProviderUrl der Quelle auf die Zielvariable var.JMSBrokerUrl.

      Der Wert tcp://localhost:61616 für die Moduleigenschaft ContextProviderUrl 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 module guide 1094 2. Wählen Sie als Typ xs:string.

    • Erstellen Sie das Mapping für die Quellvariable ISProcessId auf die Zielvariable ISGlobalProcessId.

  3. 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

  1. Melden Sie sich an der INUBIT Workbench an.

  2. Öffnen Sie den Listener-Workflow zum Bearbeiten.

  3. Erstellen, benennen und aktivieren Sie den Workflow Connector.

  4. 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.

  5. Wechseln Sie auf das Register Module-Auswahl, klicken Sie das Modul im Antwort-Workflow an, das vom Listener-Workflow gestartet werden soll.

  6. Klicken Sie auf Fertig stellen, um die Einstellungen zu speichern.

  7. Publizieren Sie den Antwort-Workflow.

Konfigurieren des Antwort-Workflows mit einem JMS Output Connector

So gehen Sie vor

  1. Erstellen Sie den Antwort-Workflow.

  2. Erstellen Sie einen XSLT Converter.

  3. Erstellen Sie einen JMS Output Connector.

  4. Konfigurieren Sie das Variablen-Mapping des JMS Output Connectors.

  5. Verbinden Sie den JMS Output Connector mit dem Workflow Connector.

  6. Publizieren Sie den Workflow.

Konfigurieren des Antwort-XSLT Converter

So gehen Sie vor

  1. Melden Sei sich an der INUBIT Workbench an.

  2. Öffnen Sie den Antwort-Workflow zum Bearbeiten.

  3. 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>
  4. Klicken Sie auf Fertig stellen, um die Einstellungen zu speichern.

Konfigurieren des JMS Output Connectors

So gehen Sie vor

  1. Melden Sei sich an der INUBIT Workbench an.

  2. Öffnen Sie den Antwort-Workflow zum Bearbeiten.

  3. Erstellen Sie einen JMS Output Connector, um eine Antwortnachricht aus dem vom Antwort-XSLT Converter erstellten Antwortinhalt zu erstellen.

  4. Wechseln Sie auf das Register System Connector Eigenschaften und aktivieren Sie den Connector.

  5. 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.

    module guide 1096 1
    • 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

  6. Klicken Sie auf Fertig stellen, um das Modul zu speichern.

  7. Publizieren Sie den Workflow.

Konfigurieren des Variablen-Mappings des JMS Output Connectors

So gehen Sie vor

  1. Melden Sei sich an der INUBIT Workbench an.

  2. Öffnen Sie Variablen-Mapping des JMS Output Connector im Antwort-Workflow.

    Siehe

  3. Erstellen Sie die folgenden Variablen, um die Moduleigenschaften QueueName und JNDIProperties zu überschreiben:

    module guide 1097 0
    1. Erstellen Sie das Mapping für einen Quell-XPath-Ausdruck auf die Zielvariable QueueName.

      1. Wählen Sie als Quelle XPath expression.

      2. Geben Sie den folgenden XPath-Ausdruck ein:

        substring-after($JMSReplyTo,'temp-queue://')

      3. Wählen Sie als Ziel die Moduleigenschaft QueueName.

    2. Erstellen Sie das Mapping für einen Quell-XPath-Ausdruck auf die Zielvariable JNDIProperties.

      1. Wählen Sie als Quelle XPath expression.

      2. Geben Sie den folgenden XPath-Ausdruck ein:

        concat('tempQueue.',substring-after($JMSReplyTo,'temp-queue://'),'=',substring-after($JMSReplyTo,'temp-queue://'))
      3. Wählen Sie als Ziel die Moduleigenschaft JNDIProperties.

  4. 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.

    JMS Spezifikation, Version 1.1, Abschnitt Message Selector, siehe https://www.oracle.com/technetwork/java/jms/index.html.

  • 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 Methode hasMoreElements() 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

  • boolean

  • byte

  • short

  • int

  • long

  • float

  • double

  • String

Informationen zur JMS Spezifikation, Version 1.1, Abschnitt Message Selector, siehe https://www.oracle.com/technetwork/. java/jms/index.html.

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.