Show TOC

Asynchrone MessagesLocate this document in the navigation structure

Verwendung

Das Adapter-Framework stellt ein transaktionales Konzept zur Verfügung, das eine sichere Lösung für Quality-of-Service Exactly Once für Sender- und Empfängeradapter liefert. Im Senderkanal können in Fehlersituationen mögliche Duplikate erkannt und gelöscht werden. Im Empfängerkanal ist in der Regel eine Aktion des Administrators nötig, um den Fehlerzustand zu beheben.

Voraussetzungen

Für asynchrone Messages darf ein Adapter:

  • In Empfängerrichtung keine Response-Message verschicken
  • In Senderrichtung keine Response-Message erwarten.

Folgende Voraussetzung besteht für die Empfängerrichtung:

  • Der Adapter muss bekannt geben, welche Arten von Acknowledgment-Messages er nicht unterstützt.
  • Der Adapter muss veranlassen, dass die unterstützten Acknowledgment-Messagesasynchron oder synchron zum Integration Server zurückgeschickt werden.
    Hinweis

    Zurzeit werden für die Senderrichtung Acknowledgment-Messages nicht unterstützt. Prüfen Sie SAP-Hinweis 1004000 bezüglich späterer Änderungen.

Um eine Exactly Once-Auslieferung zu implementieren, sollte der Adapter folgende Services verwenden:

MessageIDMapper

Mit diesem Service können Sie eine externe Message-ID auf eine XI-Message-ID mappen. Das Mapping wird in der Datenbank gespeichert und kann in derselben LUW (Logical Unit of Work) wie der Adapter-Framework Messaging-Service ausgeführt werden.

Weitere Informationen: Message-ID Erzeugung, Persistenz und Mapping

Das Adapter-Framework erwartet zwingend, dass der Adapter eine externe Message-ID zur Verfügung stellt. Entweder kann die Message-ID des externen Protokolls verwendet werden, oder es werden Message-IDs durch Algorithmen, beispielsweise Hash erzeugt.

Ein Beispiel für eine ID eines externen Protokolls ist die JMS-Message-ID

Im Beispieladapter wird sie aus folgenden Elementen erzeugt: Dateiname, Dateiverzeichnis und Änderungszeit.

TransactionManager

Der AS Java stellt die Funktionen des Paketes com.sap.transaction zur Verfügung. Der com.sap.transaction.TxManager wird dazu verwendet, LUWs auch über unterschiedliche Komponenten (service, ejb und jca) zu kontrollieren.

Funktionsumfang

Die Message-Verarbeitung sieht in Sender- und Empfängerrichtung unterschiedliche Schritte vor: