Broker ruft bestehenden Web-Service auf

In diesem Szenario ruft der Broker eine die Implementierung eines vorhandenen Web-Service auf.

Das Diagramm zeigt die einem Web-Service zugeordnete WSDL-Datei, die in eine Nachrichtengruppe importiert wird. Die Nachrichtengruppe wird in einem Nachrichtenfluss in einem Broker implementiert.

Beschreibung der Symbole:

Dieses Diagramm beschreibt die in den anderen Diagrammen verwendeten Symbole und wird an dieser Stelle nicht beschrieben, weil es zu jedem der Diagramme eine eigene Beschreibung gibt.

Mögliche Einsatzbereiche

Entwicklungsschritte

  1. Importieren Sie eine WSDL-Definition, um eine Nachrichtengruppe mit Definitionen für die SOAP-Nachrichten, die von der WSDL beschrieben werden, zu erstellen.
  2. Erstellen Sie einen Nachrichtenfluss, um den Web-Service aufzurufen. Wenn es sich bei der Transportmethode des Web-Services um HTTP handelt, wird ein HTTPAnforderungsknoten verwendet. Nutzt der Web-Service JMS als Transportmethode, werden geeignete JMS- oder WebSphere MQ-Knoten verwendet.

Laufzeit

Ihr Nachrichtenfluss erstellt eine entsprechend formatierte Web-Service-Anforderung, ruft den Web-Service auf und wertet die Web-Service-Antwort aus.

Beispiel 1

In diesem Beispiel agiert der Broker als Vermittler zum Web-Service.

  1. Erstellen Sie einen Nachrichtenfluss mit folgenden Knoten: HTTPEmpfangsknoten, HTTPAnforderungsknoten und HTTPAntwortknoten.
  2. Der Web-Service-Client generiert eine Web-Service-Anforderung. Diese wird vom Broker an den HTTPEmpfangsknoten geleitet.
  3. Der Nachrichtenfluss verarbeitet die Nachricht.
  4. Der HTTPAnforderungsknoten sendet eine Anforderung an den ursprünglichen Web-Service und erhält die Antwort.
  5. Der Nachrichtenfluss generiert eine Web-Service-Antwort und übergibt sie an den HTTPAntwortknoten. Die Antwort kann vollständig oder in Teilen auf der Antwort, die der HTTPAnforderungsknoten empfangen hat, basieren.
  6. Der Broker sendet die Antwort an den Web-Service-Client.

Wenn eine andere für WebSphere MQ aktivierte Anwendung die Informationen in einem anderen Format angefordert hat, kann der Nachrichtenfluss dafür sorgen, dass die Nachricht zuerst an einen MQSendeknoten zur Übertragung an die betreffende Anwendung übergeben wird, bevor sie an das Ende des Nachrichtenflusses und an den HTTPAntwortknoten, der die erwartete Web-Service-Antwort sendet, weitergegeben wird. Zum Umwandeln der Nachricht (falls erforderlich) und Ändern der Nachrichtenheader (z. B. durch Hinzufügen eines MQMD-Headers) sind entsprechende Rechenknoten erforderlich.

Beispiel 2

In diesem Beispiel stellt der Broker eine Überwachungsfunktion für einen Web-Service zur Verfügung.

  1. Sie entwerfen einen Nachrichtenfluss, der einen HTTPEmpfangsknoten enthält, der mit einem Warehouseknoten verbunden ist.
  2. Die vom Web-Service-Client empfangene Eingabenachricht wird vom Warehouseknoten in der Datenbank gespeichert.
  3. Der Warehouseknoten übergibt die Nachricht an einen HTTPAnforderungsknoten, der mit dem Web-Service interagiert.
  4. Sobald die Antwort empfangen wird, gibt der HTTPAnforderungsknoten sie an den HTTPAntwortknoten weiter.
  5. Der HTTPAntwortknoten generiert die Antwort für den Web-Service-Client.

Beispiel 3

Der WebSphere MQ-Nachrichtenfluss interagiert mit einem Web-Service
Sie entwerfen einen WebSphere MQ-Nachrichtenfluss, der über eine HTTP-Verbindung auf einen Web-Service zugreift. Beispielsweise erstellen Sie einen Nachrichtenfluss, der einen Prozess der Personalabteilung Ihres Unternehmens unterstützt. Der Prozess muss Mitarbeiter-IDs abrufen und die Nachricht um diese Information erweitern. Mitarbeiter-IDs werden im Mitarbeiterverzeichnis des Unternehmens verwaltet, auf das über einen Web-Service zugegriffen wird.
Dies ist ein Nachrichtenfluss mit dem MQEmpfangsknoten, dem Rechenknoten1, dem HTTPAnforderungsknoten, dem Rechenknoten2 und dem MQSendeknoten. Der HTTPAnforderungsknoten interagiert mit dem Unternehmensverzeichnisserver über eine HTTP-Verbindung.

In diesem Szenario inaktivieren Sie üblicherweise das Markierungsfeld Eingabenachricht durch Antwort des Webdienstes ersetzen in den Eigenschaften des HTTPAnforderungsknotens und stellen die Antwort vom Unternehmensverzeichnisserver in ein temporäres Verzeichnis in der für die Eigenschaft Position der Antwortnachricht in Baumstruktur im selben Knoten angegebenen Nachrichtenbaumstruktur. Im Rechenknoten2 schreiben Sie einen ESQL-Code, um das Ergebnis zu entpacken und die endgültige Nachricht entsprechend zu erweitern.

Beispiel 4

Der Nachrichtenfluss agiert vorübergehend als Web-Service
Sie entwerfen einen Nachrichtenfluss, der im Auftrag von Web-Service-Clients mit einem Web-Service interagiert, der seine Schnittstelle aktualisiert hat. Dies ist erforderlich, weil den Clients selbst die neue Schnittstellen nicht bekannt ist. Dieser neue Nachrichtenfluss ermöglicht älteren Clients den Zugriff auf den Server über die neuen Schnittstellen, ohne dass die Clients ihre eigenen Schnittstellen aktualisieren müssen.
Dies ist ein Nachrichtenfluss mit dem HTTPEmpfangsknoten, dem Rechenknoten1, dem HTTPAnforderungsknoten, dem Rechenknoten2 und dem HTTPAntwortknoten. Der HTTPAnforderungsknoten interagiert mit dem Unternehmensverzeichnisserver über eine HTTP-Verbindung.

Schreiben Sie ESQL-Code im Rechenknoten1, um die Clientanforderung einer Serveranforderung zuzuordnen, und im Rechenknoten2, um die Serverantwort der Clientantwort zuzuordnen. Sie können diese Anforderungs- und Antwortnachrichten in der MRM-Domäne definieren, um die Umsetzung von einem Format in das andere zu vereinfachen.

Sie können den HTTPAnforderungsknoten so konfigurieren, dass er HTTP-Header aus den vom HTTPEmpfangsknoten empfangenen Headern generiert, so dass Cookies und andere anwendungsspezifische Header durchgereicht werden können. Der HTTPAntwortknoten kann eine entsprechende Task bereitstellen, um Header aus der Antwort vom Web-Service zu extrahieren, damit sie an den anfordernden Client geliefert werden können. Damit dies ausgeführt werden kann, müssen Sie das jeweilige Markierungsfeld HTTP-Standard-Header auf Basis der ..... generieren auf dem HTTPAnforderungs- und dem HTTPAntwortknoten aktivieren.

In den meisten Szenarios ist die Originalanforderung wertlos, und Sie benötigen nur die Antwort vom Web-Service, um die Antwortnachricht für den Client zu generieren. Aktivieren Sie in diesem Fall die Eigenschaft Eingabenachricht durch Antwort des Webdienstes ersetzen auf dem HTTPAnforderungsknoten. Falls Sie die Daten aus der Eingabeanforderung beibehalten möchten, speichern Sie sie im Rechenknoten1 in der Baumstruktur 'LocalEnvironment', und rufen Sie im Rechenknoten2 ab, um sie in die Antwort einzufügen.

Zugehörige Konzepte
Web-Services, WSDL und Nachrichtenflüsse
Broker implementiert neue Web-Service-Schnittstelle
Broker implementiert bestehende Web-Service-Schnittstelle
Broker implementiert Schnittstelle, die nicht auf Web-Service basiert, zu neuem Web-Service
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 23. Aug. 2006
ac34530_