Web-Service-Nachrichtenfluss und -Nachrichtengruppe erstellen
Erstellen Sie nach den folgenden Anweisungen den Web-Service-Nachrichtenfluss und
-Nachrichtengruppe aus einer WSDL-Definition.
- Speichern Sie die Datei OrderService.WSDL in Ihrem Arbeitsbereich (Beispiel: C:\Dokumente und Einstellungen\<Benutzername>\IBM\wmbt80\workspace\OrderService.wsdl).
- Klicken Sie in der Ansicht 'Brokerentwicklung' auf Von WSDL- und/oder XSD-Dateien ausgehen.
Daraufhin wird der Assistent zum Schnelleinstieg geöffnet.
- Geben Sie im Feld Name des Nachrichtenbrokerprojekts den
Eintrag AsyncWebServiceFlows ein.
- Geben Sie im Feld Name des Nachrichtengruppenprojekts den Eintrag AsyncWebServiceMessages ein.
- Geben Sie im Feld Name der Nachrichtengruppe den Eintrag AsyncWebServiceMessages ein.
- Geben Sie im Feld Name des Nachrichtenflusses den Eintrag AsyncWebSebServiceServerFlow ein.
- Inaktivieren Sie die Option Neuen Arbeitsbereich für diese Ressourcen erstellen.
Das folgende Diagramm zeigt die angegebenen Werte für den Assistenten für den Schnelleinstieg:

- Klicken Sie auf
Weiter.
- Wählen Sie Use external resources (Externe Ressourcen verwenden) aus und klicken Sie auf Durchsuchen.
- Suchen Sie im Arbeitsbereich nach der Datei OrderService.wsdl und klicken Sie auf OK.
- Klicken Sie auf
Weiter.
- Klicken Sie auf Fertigstellen. Daraufhin werden ein leerer Nachrichtenfluss und eine Nachrichtengruppe auf Grundlage der WSDL-Datei erstellt.
- Fügen Sie dem Nachrichtenfluss 'WebServiceAsyncServerFlow' folgende Knoten hinzu.
Knotentyp |
Knotenname |
SOAPInput |
SOAP Input |
Knoten zur Weiterleitung an Zieladressen |
Route WS Operation (WS-Operation weiterleiten) |
Label |
submitPO (PO senden) |
Rechnen |
Compute Response |
SOAPReply |
SOAP Reply-Knoten |
- Verbinden Sie die Knoten entsprechend den Anweisungen in der nachfolgenden Tabelle miteinander.
Knotenname |
Terminal |
Mit diesem Knoten verbinden |
SOAPInput |
Ausgangsterminal |
Route WS Operation (WS-Operation weiterleiten) |
submitPO (PO senden) |
Ausgangsterminal |
Compute Response |
Compute Response |
Ausgangsterminal1 |
SOAP Reply-Knoten |
Weitere Informationen zur Verbindung von Knoten finden Sie in der Dokumentation zu WebSphere Message Broker im Abschnitt
Nachrichtenflussknoten verbinden.
Das nachfolgende Diagramm zeigt den Nachrichtenfluss 'WebServiceAsyncServerFlow' mit miteinander verbundenen Knoten:
- Ziehen Sie OrderService.wsdl aus dem Projekt 'AsyncWebServiceMessages' in den SOAP Input-Knoten. Die Datei OrderService.wsdl finden Sie in AsyncWebServicMessages > AsyncWebServicMessages > Implementierbare WSDL.
- Aktivieren Sie auf der Registerkarte WS-Erweiterungen der Eigenschaften des SOAP Input-Knotens die Option WS-Adressierung verwenden.
WS-Adressierungsheader werden in allen SOAP-Nachrichten für diesen Web-Service verwendet.
- Klicken Sie doppelt auf den 'Compute Response'-Knoten und fügen Sie das folgende Modul in die ESQL-Datei ein:
CREATE COMPUTE MODULE WebServicesAsyncServerFlow_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
SET OutputRoot.SOAP.Body.ns:submitPOResponse.orderStatus = 'AVAILABLE';
DECLARE outMsg REFERENCE TO OutputRoot.SOAP.Body.ns:submitPOResponse;
DECLARE inMsg REFERENCE TO InputRoot.SOAP.Body.ns:submitPORequest;
SET outMsg.orderAmt = 50;
SET outMsg.partNo = inMsg.partNo;
SET outMsg.partQuantity = inMsg.partQuantity;
RETURN TRUE;
END;
END MODULE;
Jetzt können Sie die Client-Treiber-Nachrichtengruppe erstellen. Informationen hierzu finden Sie im Abschnitt Client-Treiber-Nachrichtengruppe erstellen.
Zurück zur Erstellung des Mustercodes 'Asynchronous Consumer'