Show TOC Anfang des Inhaltsbereichs

Vorgehensweisen Eine Message versenden  Dokument im Navigationsbaum lokalisieren

Verwendung

Sie können ein Client-Proxy folgendermaßen einsetzen:

·        Um einen Service über den Integration Server von SAP XI aufzurufen.

·        Um einen Web Service aufzurufen.

Die Art der Verwendung hängt von der Laufzeitkonfiguration ab.

Achtung

Kunden, die kein SAP XI ab Release 3.0 installiert haben, können nicht auf das Integration Repository zugreifen oder direkt über XI Messages austauschen.

Das allgemeine Programmiermodell der ABAP-Proxy-Laufzeit unterstützt synchrone Kommunikation. Die XI-Laufzeit unterstützt außerdem asynchrone Kommunikation.

Vorgehensweise

Um eine Message über die ABAP-Proxy-Laufzeit zu versenden, rufen Sie den zugehörigen Client-Proxy in Ihrem Anwendungsprogramm auf.

Hinweis

Sie können ein Client-Proxy im Object Navigator markieren und per Drag&Drop in den Editor ziehen.

 

...

       1.      Deklarieren Sie folgende Variablen:

DATA:

* Reference variables for proxy and exception class
  lo_clientProxy     TYPE REF TO
[generierte Proxy-Klasse],
  lo_sys_exception   TYPE REF TO cx_ai_system_fault,

* Structures to set and get message content
  ls_request         TYPE [Output-Message-Typ],
  ls_response        TYPE [Input-Message-Typ].

       2.      Füllen Sie die Struktur ls_request für die Request-Message.

       3.      Instanziieren Sie Ihr Client-Proxy:

TRY.

* create proxy client

    CREATE OBJECT lo_clientProxy

              EXPORTING LOGICAL_PORT_NAME = ‘LOGICAL_PORT_NAME’.

Hinweis

LOGICAL_PORT_NAME ist der Name des logischen Ports, den Sie verwenden wollen und über den der Empfänger festgelegt wird. Dieser Parameter kann auch weggelassen werden, wenn ein voreingestellter Port verwendet werden soll oder die XI-Laufzeit (siehe Laufzeitkonfiguration)

       4.      Um eine Message zu versenden, rufen Sie die entsprechende Methode des Client-Proxy auf. WSDL lässt mehrere solcher Methoden zu (spezifiziert über das Element <operation>). Im XI-Fall gibt es nur eine Methode, deren Name auf EXECUTE_SYNCHRONOUS beziehungsweise EXECUTE_ASYNCHRONOUS voreingestellt ist. Fangen Sie mindestens die Ausnahme cx_ai_system_fault ab:

* do synchronous client proxy call

    CALL METHOD lo_clientProxy->execute_synchronous

             EXPORTING output  = ls_request
             IMPORTING input   = ls_response.

    CATCH cx_ai_system_fault INTO lo_sys_exception.

*   Error handling

ENDTRY.

Hinweis

Siehe auch: Fehlerbehandlung.

 

 

 

 

 

Ende des Inhaltsbereichs