Informationen zum Nachrichtenfluss 'XML_PassengerQuery'

Der Nachrichtenfluss 'XML_PassengerQuery' ruft die Reservierungsdaten des in der Eingabenachricht angegebenen Passagiers ab. Die Daten, die in die Ausgabenachricht geschrieben werden, sind abhängig von den Daten in der Eingabenachricht:

Der Nachrichtenfluss verwendet den Knoten 'Weiterleitung_an_Zieladresse' und den Zieladressenknoten, um eine Nachricht auf Grundlage der in der Nachricht enthaltenen Daten dynamisch weiterzuleiten. Dadurch kann auf verkettete Filterknoten verzichtet werden, mit denen die Nachrichten über festgelegte Pfade auf Grundlage von booleschen Ergebnissen vom Typ True/False weitergeleitet würden.

Für die Ausführung des Nachrichtenflusses 'XML_PassengerQuery' sind zwei Eingabenachrichten verfügbar, mit denen der Abruf von beschriebenen unterschiedlichen Daten verdeutlicht wird.

In der folgenden Abbildung sehen Sie den Nachrichtenfluss 'XML_PassengerQuery'.

Anzeigenerfassung des Nachrichtenflusses 'XML_PassengerQuery'

In der nachfolgenden Tabelle werden die Knotentypen aufgelistet, die im Nachrichtenfluss 'XML_PassengerQuery' verwendet werden.

Knotentyp Knotenname
MQEmpfang XML_PASSENGERQUERY_IN
Rechnen DecideOnQuery; GetPassengerInformation; GetReservationsInformation
Knoten 'Weiterleitung_an_Zieladresse'

Knoten 'Weiterleitung_an_Zieladresse'

Zieladressenknoten SinglePassenger; AllReservations
MQSenden XML_PASSENGERQUERY_FAIL_1; XML_PASSENGERQUERY_FAIL_2; XML_PASSENGERQUERY_OUT

Weitere Informationen finden Sie unter Die Knoten im Nachrichtenfluss 'XML_PassengerQuery' in der WebSphere Message Broker-Dokumentation. Um den in diesem Nachrichtenfluss verwendeten ESQL-Code anzuzeigen, siehe Creating the XML_PassengerQuery message flow (Den Nachrichtenfluss 'XML_PassengerQuery' erstellen).

Der Nachrichtenfluss 'XML_PassengerQuery' führt die folgenden Aktionen durch:

  1. Der Knoten XML_PASSENGERQUERY_IN ruft die Eingabenachricht aus der Warteschlange XML_PASSENGERQUERY_IN ab und identifiziert die Eingabenachricht als in der XML-Domäne vorhanden. Der Nachrichtenfluss muss daher die Nachricht unter Verwendung des XML-Parsers syntaktisch analysieren.
  2. Der Knoten XML_PASSENGERQUERY_IN gibt die Nachricht an den Knoten 'DecideOnQuery' weiter. Alternativen:
  3. Der Knoten 'DecideOnQuery' entscheidet, welchen Weg die Nachricht durch den Nachrichtenfluss nimmt. Der Weg, den die Nachricht nimmt, hängt vom Typ der in der Nachricht enthaltenen Informationen ab. Der Knoten aktualisiert die lokale Umgebung mit den Zielinformationen:
  4. Der Knoten 'DecideOnQuery' übergibt die Nachricht und die lokale Umgebung über das Ausgangsterminal an den Knoten 'Weiterleitung_an_Zieladresse'.
  5. Der Knoten 'Weiterleitung_an_Zieladresse' übergibt die Eingabenachricht an den entsprechenden Zieladressenknoten: an den Knoten 'SinglePassenger', wenn der Knoten 'DecideOnQuery' Einzelner Passagier in 'LocalEnvironment' gespeichert hat, oder den Knoten 'AllReservations', wenn der Knoten 'DecideOnQuery' Alle Reservierungen in 'LocalEnvironment' gespeichert hat:
  6. Wenn der Knoten 'Weiterleitung_an_Zieladresse' die Eingabenachricht an den Knoten 'SinglePassenger' weitergeleitet hat, übergibt der Knoten 'SinglePassenger' die Eingabenachricht, die eine Reservierungsnummer enthält, über das Ausgangsterminal an den Knoten 'GetPassengerInformation'. Der Knoten 'GetPassengerInformation' überprüft die Reservierungsnummer in der Tabelle XMLPASSENGERTB der Datenbank RESERVDB und erstellt eine Ausgabenachricht aus den Informationen in der Tabelle XMLPASSENGERTB einschließlich der Reservierungsnummer, des vollständigen Namens des Passagiers, der Flugnummer, des Flugdatums und der Klasse. Der Knoten 'GetPassengerInformation' übergibt dann die Ausgabenachricht über das Ausgangsterminal an den Knoten XML_PASSENGERQUERY_OUT.
  7. Wenn der Knoten 'Weiterleitung_an_Zieladresse' die Eingabenachricht an den Knoten 'AllReservations' übergibt, leitet dieser die Eingabenachricht, in der der Name des Passagiers enthalten ist, über das Ausgangsterminal an 'GetReservationsInformation' weiter. Der Knoten 'GetReservationsInformation' sucht in der Tabelle XMLPASSENGERTB der Datenbank RESERVDB nach dem Passagiernamen und erstellt eine Ausgabenachricht aus den Informationen in der Tabelle XMLPASSENGERTB einschließlich des vollständigen Passagiernamens, der Flugnummer, des Flugdatums und der Klasse für alle Reservierungen, die der Passagier vorgenommen hat. Der Knoten 'GetReservationsInformation' leitet die Ausgabenachricht über das Ausgangsterminal an XML_PASSENGERQUERY_OUT weiter.
  8. Der Knoten XML_PASSENGERQUERY_OUT reiht die Ausgabenachricht in die Warteschlange XML_PASSENGERQUERY_OUT ein.

Symbol Hauptseite   Zurück zu "Das Beispielprogramm 'Airline Reservations'"