Show TOC

Point-to-Point-Kommunikation für asynchrone ServicesLocate this document in the navigation structure

Verwendung

Asynchrone Services können so konzipiert und implementiert werden, dass eine direkte WS-RM-basierte Point-to-Point-Kommunikation zwischen Anwendungen aus der Perspektive der Service-Implementierung heraus möglich ist. Diese Kommunikation kann realisiert werden, ohne Service-Aufrufe zur Laufzeit über einen XI Integration Server leiten zu müssen.

Die Implementierung von asynchronen Services, die das Point-to-Point-Konzept unterstützen, muss in zwei Bereiche eingeteilt werden:

  • Ein anwendungsspezifischer Teil, der jedoch unabhängig von der Web-Service-Laufzeit ist.

  • Ein Teil, der Implementierungen abdeckt, die spezifisch für die Web-Service-Laufzeit sind.

Die Implementierungen, die für die Web-Service-Laufzeit spezifisch sind, befinden sich weiterhin in der Proxy-Klasse, während die Implementierungen, die von der Web-Service-Laufzeit unabhängig sind (wie Daten-Mappings und Anwendungsaufrufe), in eine eigene Klassenimplementierung gekapselt werden müssen.

Vorgehensweise
  1. Legen Sie pro Service-Operation eine Service-Implementierungsklasse mit einem Singleton Pattern an.

    Sie sollten folgende Schritte ausführen:

    • Definieren Sie die Instanziierung als privat.

    • Definieren Sie eine Typreferenz auf die Implementierungsklasse mit dem privaten statischen Attribut go_singleton.

    • Implementieren Sie die statische öffentliche CREATE-Methode (Factory-Operation), welche die Singleton-Instanz zurückgibt.

    • Implementieren Sie die öffentliche Instanzmethode EXECUTE, die den Proxy-Eingabeparameter als Importing-Parameter und den Standard-Fault-Message-Typ als Ausnahmeparameter enthält.

      In dieser Methode sollten Sie folgende Schritte ausführen:

      • Rufen Sie Validierungen, Mappings und Anwendungsaufrufe auf.

      • Es wird empfohlen, die einzelnen Schritte der Service-Verarbeitung wie Validierungen und Mappings so in öffentlichen Operationen zu kapseln, dass sie wiederverwendet werden können, z.B. in Massen-Service-Implementierungen, die auf einer Einzelinstanz-Service-Implementierung aufsetzen.

  2. Implementieren Sie die Proxy-Klasse wie folgt:

    • Implementieren Sie die Methode EXECUTE_ASYNCHRONOUS.

    • Implementieren Sie folgende Funktionen, die auf XI bzw. der aktiven Web-Service-Laufzeit aufsetzen:

      • Aktivierung des erweiterten XML-Handlings im Konstruktor.

      • Deaktivierung des erweiterten XML-Handlings in der Methode EXECUTE_ASYNCHRONOUS.

      • Zugriffe auf XI- oder Web-Service-Protokolle sind erforderlich.