Web-Service-Nachrichtenflüsse erstellen

Die Nachrichtenflüsse für den WebSphere Service Registry and Repository (WSRR)-Web-Service werden zur Verfügung gestellt. Wenn Sie die Nachrichtenflüsse jedoch selbst erstellen möchten, befolgen Sie die folgenden Anweisungen:

  1. Erstellen Sie ein neues Nachrichtenbrokerprojekt namens My WSRR Connectivity Message Flows (Meine WSRR-Konnektivitätsnachrichtenflüsse). Fügen Sie dem Nachrichtensatzprojekt 'My WSRR Connectivity' (Meine WSRR-Konnektivität) eine Projektabhängigkeit hinzu.
    Hinweise finden Sie im Abschnitt Nachrichtenflussprojekte erstellen in der WebSphere Message Broker-Dokumentation.
  2. Erstellen Sie einen neuen Nachrichtenfluss namens DemoCustomer_WebService_v10.
    Die entsprechenden Anweisungen finden Sie in der WebSphere Message Broker-Dokumentation unter Nachrichtenflüsse erstellen.
  3. Fügen Sie im Nachrichtenflusseditor die in der folgenden Tabelle aufgelisteten Knoten hinzu und benennen Sie diese um.
    Anweisungen hierzu finden Sie in der Dokumentation von WebSphere Message Broker im Abschnitt Nachrichtenflussknoten hinzufügen.
    Palettenfächer Knotentyp Knotenname
    Web-Services SOAPInput SOAP DemoCustomer
    Transformation Rechnen Create WS Response
    Web-Services SOAPReply SOAP Reply-Knoten
  4. Verbinden Sie die Knoten wie in der folgenden Tabelle angegeben.
    Anweisungen hierzu finden Sie in der Dokumentation zu WebSphere Message Broker im Abschnitt Nachrichtenflussknoten verbinden.
    Anhand des Diagramms unter Informationen zum Mustercode 'WebSphere Service Registry and Repository (WSRR) Connectivity' können Sie überprüfen, ob die Knoten korrekt verbunden sind.
    Knotenname Terminal Mit diesem Knoten verbinden
    SOAP DemoCustomer Ausgangsterminal Create WS Response
    Create WS Response Ausgangsterminal SOAP Reply-Knoten
  5. Konfigurieren Sie die Knoteneigenschaften wie in der folgenden Tabelle angegeben. Akzeptieren Sie die Standardwerte für alle Eigenschaften, es sein denn, es ist ein alternativer Wert in der Tabelle aufgeführt.
    Anweisungen hierzu finden Sie in der Dokumentation von WebSphere Message Broker im Abschnitt Nachrichtenflussknoten konfigurieren.
    Knotenname Seite Eigenschaft Wert
    SOAP DemoCustomer Grundeinstellung WSDL-Dateiname Suchen Sie die Datei DemoCustomer_v10.wsdl, die Sie zuvor in den Nachrichtensatz 'WSRR-Konnektivität' (WSRR Connectivity) importiert haben.
    Wenn sie ausgewählt wird, füllt diese Datei die anderen Eigenschaften in der Seite 'Grundeinstellung' aus.
  6. Klicken Sie doppelt auf den 'Create WS Response'-Knoten, um den ESQL-Editor zu öffnen. Kopieren Sie die im Folgenden angegebenen ESQL-Code-Module, und fügen Sie sie in die ESQL-Datei ein.
    Weitere Informationen finden Sie in der Dokumentation zu WebSphere Message Broker im Abschnitt ESQL erstellen.
    DECLARE tns NAMESPACE 'http://schemas.xmlsoap.org/soap/envelope/';
    DECLARE intf NAMESPACE 'http://demo.sr.eis.ibm.com';
    
    CREATE COMPUTE MODULE DemoCustomer_WebService_v10_CreateWSResponse
      CREATE FUNCTION Main() RETURNS BOOLEAN
      BEGIN
        CALL CopyMessageHeaders();
        SET OutputRoot.SOAP.Body.intf:updateCustomerResponse.updateCustomerReturn = 'Updated Customer via WebService version 1.0';
        RETURN TRUE;
      END;
      
      CREATE PROCEDURE CopyMessageHeaders() BEGIN
        DECLARE I INTEGER;
        DECLARE J INTEGER;
        SET I = 1;
        SET J = CARDINALITY(InputRoot.*[]);
        WHILE I < J DO
          SET OutputRoot.*[I] = InputRoot.*[I];
          SET I = I + 1;
        END WHILE;
      END;
    
    END MODULE;
    
    CREATE COMPUTE MODULE DemoCustomer_WebService_v20_CreateWSResponse
      CREATE FUNCTION Main() RETURNS BOOLEAN
      BEGIN
        CALL CopyMessageHeaders();
        SET OutputRoot.SOAP.Body.intf:updateCustomerResponse.updateCustomerReturn = 'Updated Customer via WebService version 2.0';
        RETURN TRUE;
      END;
    
      CREATE PROCEDURE CopyMessageHeaders() BEGIN
        DECLARE I INTEGER;
        DECLARE J INTEGER;
        SET I = 1;
        SET J = CARDINALITY(InputRoot.*[]);
        WHILE I < J DO
          SET OutputRoot.*[I] = InputRoot.*[I];
          SET I = I + 1;
        END WHILE;
      END;
    
    END MODULE;
    
  7. Speichern Sie die ESQL-Datei.
  8. Stellen Sie sicher, dass die ESQL-Moduleigenschaft im 'Create WS Response'-Knoten auf das Modul 'DemoCustomer_WebService_v10_CreateWSResponse' verweist.
  9. Speichern Sie den Nachrichtenfluss.
  10. Erstellen Sie eine Kopie des Nachrichtenflusses DemoCustomer_WebService_v10.msgflow. Benennen Sie den neuen Nachrichtenfluss in DemoCustomer_WebService_v20.msgflow um.
  11. Konfigurieren Sie die ESQL-Moduleigenschaft im 'Create WS Response'-Knoten so, dass sie auf das Modul 'DemoCustomer_WebService_v20_CreateWSResponse' verweist.
  12. Speichern Sie den Nachrichtenfluss.

Sie können jetzt den WSRR-Konnektivität-Hauptnachrichtenfluss erstellen, um diese Web-Services aufzurufen. Weitere Informationen hierzu finden Sie im Abschnitt Hauptnachrichtenfluss erstellen.

Zurück zur Erstellung des Mustercodes 'WebSphere Service Registry and Repository Connectivity'