Informationen zum Nachrichtenfluss 'XML_FlightQueryOut'

Der Nachrichtenfluss 'XML_FlightQueryOut' ist der Verteilernachrichtenfluss im Aggregationsbeispiel 'XML_FlightQuery'. XML_FlightQuery besteht aus drei kurzen Nachrichtenflüssen, die Nachrichten aus lokalen Warteschlangen für WebSphere MQ abrufen, zusammenfassen und einreihen. Dabei handelt es sich um folgende drei Nachrichtenflüsse:

  1. XML_FlightQueryOut, den Verteilernachrichtenfluss, der zwei zusammengehörende Anforderungen von Flug- und Passagierdaten generiert und verteilt.
  2. XML_FlightQueryReply, der die Informationen für die Beantwortung der Anforderungen sucht.
  3. XML_FlightQueryIn, den Sammelnachrichtenfluss, der die Antworten zu einer einzelnen Antwortnachricht zusammenfügt.

Die Eingabenachricht für 'XML_FlightQuery' fordert Informationen über einen bestimmten Flug und die Passagiere an, die auf diesem Flug Sitzplätze reserviert haben.

In der nachfolgenden Abbildung wird der Nachrichtenfluss XML_FlightQueryOut veranschaulicht.

Anzeigenerfassung des Nachrichtenflusses 'XML_FlightQuery_Out'

In der folgenden Tabelle sind die Knotentypen aufgelistet, die im Nachrichtenfluss XML_FlightQueryOut verwendet werden.

Knotentyp Knotenname
MQEmpfang XML_FLIGHTQUERY_IN
Knoten zur Aggregationssteuerung RequestDetails
MQSenden XML_FLIGHTQUERY_FAIL; XML_FLIGHTQUERY_FLIGHT; XML_FLIGHTQUERY_PASSENGERS
Knoten für Aggregationsanforderungen RecordFlightRequest; RecordPassengerRequest

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

Der Nachrichtenfluss XML_FlightQueryOut führt die folgenden Aktionen durch:

  1. Der Knoten XML_FLIGHTQUERY_IN ruft die Eingabenachricht aus der Warteschlange XML_FLIGHTQUERY_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_FLIGHTQUERY_IN gibt die Anforderungsnachricht über das Ausgangsterminal an den Knoten 'RequestDetails' weiter. Wenn die Ausnahmebedingung nachgeschaltet ausgelöst wurde und für die Nachricht eine ROLLBACK-Operation bis hierher ausgeführt wird, gibt der Knoten XML_FLIGHTQUERY_IN die Nachricht alternativ über das Catch-Terminal an den Knoten XML_FLIGHTQUERY_FAIL weiter, der die Nachricht in die Warteschlange XML_FLIGHTQUERY_FAIL einreiht.
  3. Der Knoten 'RequestDetails' generiert die folgenden Anforderungsnachrichten:
  4. Der Knoten 'RequestDetails' gibt die Nachricht für die Anforderung von Flugdaten über das Ausgangsterminal an den Knoten XML_FLIGHTQUERY_FLIGHT und die Nachricht für die Anforderung von Passagierdaten auf demselben Weg an den Knoten XML_FLIGHTQUERY_PASSENGERS weiter.
  5. Der Knoten XML_FLIGHTQUERY_FLIGHT stellt die Nachricht für die Anforderung von Flugdaten in die Warteschlange XML_FLIGHTQUERY_FLIGHT und gibt diese Nachricht auch über das Ausgangsterminal zum Knoten 'RecordFlightRequest' weiter. Zwischenzeitlich stellt der Knoten XML_FLIGHTQUERY_PASSENGERS die Nachricht für die Anforderung von Passagierdaten in die Warteschlange XML_FLIGHTQUERY_PASSENGERS und gibt diese Nachricht auch über das Ausgangsterminal an den Knoten 'RecordPassengerRequest' weiter.
  6. Der Knoten 'RequestDetails' speichert den Status der Aggregation intern im Broker.

Der Nachrichtenfluss XML_FlightQueryReply führt die Aggregation fort.

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