
Sie konfigurieren den JMS-Empfänger-Adapter, um PI-Messages vom Integration Server oder vom PCK in JMS-Nachrichten zu verwandeln.
Diese Auswahl ist im PCK nicht möglich.
Verbindungsparameter definieren
Beim Generischen JMS-Provider werden die Verbindungseinstellungen in der Tabelle mit den zusätzlichen Parametern angegeben.
Für den JMS-Provider ist Queue-Unterstützung voreingestellt.
Weitere Verbindungsparameter können Sie in der Tabelle Zusätzliche Parameter auf der Registerkarte Erweitert angeben. Je nachdem, welchen Drittanbieter-JMS-Provider Sie wählen, müssen Sie eventuell eine eindeutige Client-ID (pro Kanal) in der Tabelle der zusätzlichen Parameter festlegen.
Die Funktion zum Setzen der Client-ID ist provider-spezifisch.
Verbindung nach Bedarf definieren
Initialkontext-Eigenschaften
Jetzt können Sie diese Eigenschaften wie folgt festlegen:
| Name |
Wert |
| propertyName |
propertyValue |
Sowohl propertyName als auch propertyValue sind Strings.
Diese Tabelle ist nur verfügbar, wenn Sie für das Transportprotokoll JNDI-Lookup des JMS-Providerwählen.
JMS-Einstellungen definieren
Die transaktionale JMS-Session ist die Standardeinstellung und wird empfohlen. Wenn Sie diese Einstellung nicht verwenden, kann nicht garantiert werden, dass die Message zugestellt wird.
In diesem Fall kann die Message verloren gehen.
Eine transaktionale Session wird nach der Verarbeitung einer Message entweder mit COMMIT abgeschlossen oder im Fehlerfall mit ROLLBACK zurückgesetzt.
Korrelationseinstellungen definieren
PI-Einstellungen festlegen
Wählen Sie Behandlung von ausstehenden PI-Messages:
Ein doppelter Datensatz wird dann erzeugt, wenn das JMS-Commit durchgeführt wird, nicht jedoch das Commit auf der Datenbank des Adapter-Framework. Wenn Sie diese Option wählen, dann müssen Sie im JMS-Umfeld sicherstellen, dass diese Message noch nicht empfangen wurde.
Ein Verlust der Message tritt dann ein, wenn auch das JMS-Commit noch nicht durchgeführt wurde. Wenn Sie diese Option wählen, dann müssen Sie im JMS-Umfeld sicherstellen, dass diese Message schon empfangen wurde.
Ein Beispiel für die Verwendung des Parameters finden Sie unten unter Beispiel.
Für die Prüfung doppelter Messages müssen IDs auf der Datenbank gesichert werden. Damit die Größe der Datenbank nicht unnötig wächst, werden diese IDs nach einiger Zeit gelöscht.
Das Löschen kann beispielsweise nach einem Tag erfolgen, wenn Sie täglich das Message-Monitoring kontrollieren.
Einstellungen für die Fehlerbehandlung definieren
Eine gewisse Wartezeit kann beispielsweise bei transaktionaler Verarbeitung sinnvoll sein, da fehlerhafte Messages nach einem ROLLBACK in der Queue stehen bleiben.
Geben Sie-1ein, wird nicht versucht die Verbindung erneut aufzubauen.
Diese Funktion setzt voraus, dass Ihr JMS-Provider die Registrierung eines ExceptionListener unterstützt.
Wird beim Verschicken einer Message eine JMS-Ausnahme ausgelöst, wird der hier angegebene Freitext mit dem angegebenen String verglichen. Sobald das unter Warten bis zur neuen Verbindung (ms) angegebene Zeitintervall überschritten ist, wird ein Wiederaufbau der Verbindung vorgenommen.
Setzen Sie diesen Parameter nur, wenn Ihr JMS-Provider die Registrierung eines ExceptionListener nicht unterstützt.
Adapterspezifische Message-Eigenschaften definieren
Ist das Kennzeichen gesetzt und in der Message fehlt der Header für adapterspezifische Message-Attribute oder eines der gesetzten Attribute, dann führt dies zu einer Zustellungsausnahme im Audit-Log der Message.
Setzen Sie das Kennzeichen nicht, und es fehlen Message-Attribute, greift der Adapter auf Informationen aus der Adapterkonfiguration zu.
Unter Java Type definieren Sie den JMS-Java-Message-Typ für das Attribut in der erzeugten JMS-Message. Sie können die folgenden Daten eingeben:
Die technischen Namen der zusätzlichen Attribute lauten DCJMSMessageProperty0, DCJMSMessageProperty1, ..., DCJMSMessageProperty9.
Sie können in die Tabelle mehr als zehn Eigenschaften eingeben. Es werden jedoch nur die ersten zehn berücksichtigt.
Der Attributnamensraum für den Adapter ist: http://sap.com/xi/XI/System/JMS.
Adapterstatus definieren
Weitere Parameter definieren
Wenn Sie sich zum Beispiel mit einem Drittanbieter-JMS-Provider verbinden, können Sie die Client-ID und den entsprechenden Wert für jeden Kanal angeben. Diese sind jedoch spezifisch für den Drittanbieter-Provider.
Weitere Informationen finden Sie in der Dokumentation zum Drittanbieter-Provider.
Ein typischer Vorgang zur Behandlung von hängenden Messages ist:
Der Kanal ist so konfiguriert, dass er einen wiederherstellbaren vorläufigen Fehler für diese Warnung auslöst (Standard). Entscheiden Sie, ob Sie diese Message umgehen möchten. Setzen Sie in diesem Fall den Kanalparameter Pending Handling auf 'Bypass' und starten Sie die Message erneut.
Haben Sie Messages vorliegen, von denen einige im JMS-Umfeld angekommen sind und andere nicht, dann müssen Sie den Vorgang zwei Mal durchführen und jeweils die passenden Messages wiederholt senden.