Ansicht
Dokumentation

ABENAPC_WS_CLIENT_ABEXA - APC WS CLIENT ABEXA

ABENAPC_WS_CLIENT_ABEXA - APC WS CLIENT ABEXA

Fill RESBD Structure from EBP Component Structure   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- AS ABAP als WebSocket-Client

Das Beispiel demonstriert den AS ABAP als WebSocket-Client.

Quelltext

Ausführen

Beschreibung

Das Beispiel demonstriert, wie ein ABAP-Programm einen APC-Client für das WebSocket-Protokoll erstellen kann.

  • Als Handler-Klasse dient die lokale Klasse apc_handler, die das Interface IF_APC_WSP_EVENT_HANDLER_PCP implementiert. Die Methode on_message setzt bei Empfang einer Nachricht ihr Attribut message auf den Nachrichtentext.
  • Mit CL_APC_WSP_CLIENT_MANAGER wird ein Client-Objekt für den aktuellen AS ABAP als APC-Server erzeugt und eine Verbindung zu einem dessen ABAP Push Channels geöffnet. Es kann ausgesucht werden, welcher der ABAP Push Channels DEMO_APC_PCP oder DEMO_APC_PCP_STATEFUL aus dem ausführbaren Beispiel AS ABAP als WebSocket-Server verwendet wird. Außerdem kann dem Server mitgeteilt werden, dass er seine Nachrichten über ABAP Messaging Channels versenden soll.
  • Über den Nachrichtenmanager des Client-Objekts wird eine Nachricht im PCP-Format erzeugt und mehrmals gesendet.
  • Danach wird das Programm mehrmals mit der Anweisung WAIT FOR PUSH CHANNELS in einen Wartezustand versetzt, um vom Server zurück gesendete Nachrichten zu behandeln. Der logische Ausdruck überprüft dabei das Attribut message der Handler-Klasse apc_handler. Ein empfangener Text wird ausgegeben.
  • Abschließend wird die Verbindung explizit geschlossen.

Es kann ausgewählt werden, wieviele Nachrichten gesendet werden und wie oft gewartet wird.

  • Wenn mit dem zustandsbehafteten Server kommuniziert wird, sieht man beim Senden und Empfangen mehrerer Nachrichten, dass sich dessen Zählerstand vergrößert.
  • Wenn der Server seine Nachrichten mit ABAP Messaging Channels sendet, können auch andere AMC-Empfänger des gleichen Messaging Channels die Nachrichten des Servers sehen. Beispielsweise kann der Web Browser aus dem ausführbaren Beispiel AS ABAP als WebSocket-Server diese Nachrichten empfangen. Umgekehrt empfängt der APC-Client dann auch die Nachrichten, die der APC-Server als Reaktion auf Nachrichten vom Web Browser sendet, wenn sie in eine der programmierten Wartezeiten fallen.





CL_GUI_FRONTEND_SERVICES - Frontend Services   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 3261 Date: 20240523 Time: 183450     sap01-206 ( 66 ms )