Acerca del flujo de mensajes XML_FlightQueryReply

XML_FlightQueryReply es el flujo de mensajes de respuesta del ejemplo de agregación, XML_FlightQuery. XML_FlightQuery se crea a partir de tres flujos de mensajes cortos que se comunican obteniendo, agregando y poniendo mensajes en las colas locales de WebSphere MQ. Los tres flujos de mensajes en XML_FlightQuery son:

  1. XML_FlightQueryOut, el flujo de mensajes de abanico de salida, que genera y emite dos peticiones relacionadas de información de vuelos e información de pasajeros.
  2. XML_FlightQueryReply, que busca la información necesaria para responder a las dos peticiones.
  3. XML_FlightQueryIn, el flujo de mensajes de abanico de entrada, que combina las respuestas en un solo mensaje de respuesta.

El mensaje de entrada para XML_FlightQuery solicita información sobre un vuelo específico y detalles sobre los pasajeros que han reservado asientos en ese vuelo.

La siguiente figura muestra el flujo de mensajes XML_FlightQueryReply.

Una captura de pantalla del flujo de mensajes XML_FlightQuery_Reply

La siguiente tabla lista los tipos de nodos utilizados en el flujo de mensajes XML_FlightQueryReply.

Tipo de nodo Nombre de nodo
MQInput XML_FLIGHTQUERY_FLIGHT; XML_FLIGHTQUERY_PASSENGERS
Compute GetFlightDetails; GetPassengerDetails
MQReply MQMD_ReplyToQ
MQOutput XML_FLIGHTQUERY_FAIL_1; XML_FLIGHTQUERY_FAIL_2

Si desea ver más información, lea lo referente a los nodos en el flujo de mensajes XML_FlightQueryReply en la documentación de WebSphere Message Broker. Para ver el ESQL que se utiliza en el flujo de mensajes, consulte Crear el flujo de mensajes XML_FlightQueryReply.

El flujo de mensajes XML_FlightQueryReply realiza las siguientes operaciones:

  1. El nodo XML_FLIGHTQUERY_FLIGHT obtiene el mensaje de petición de la cola XML_FLIGHTQUERY_FLIGHT y después lo pasa, a través del terminal de salida (Out) al nodo GetFlightDetails. De forma alternativa, si se ha generado una excepción en sentido descendente y el mensaje se ha restituido, el nodo XML_FLIGHTQUERY_FLIGHT pasa el mensaje, a través del terminal de captación (Catch), al nodo XML_FLIGHTQUERY_FAIL_1.
  2. El nodo XML_FLIGHTQUERY_PASSENGERS obtiene el mensaje de petición de la cola XML_FLIGHTQUERY_PASSENGERS y después lo pasa, a través del terminal de salida (Out) al nodo GetPassengerDetails. De forma alternativa, si se ha generado una excepción en sentido descendente y el mensaje se ha restituido, el nodo XML_FLIGHTQUERY_PASSENGERS pasa el mensaje, a través del terminal de captación (Catch),al nodo XML_FLIGHTQUERY_FAIL_2, que transfiere el mensaje a la cola XML_FLIGHT_QUERY_FAIL.
  3. El nodo GetFlightDetails accede a la tabla XMLFLIGHTTB en la base de datos RESERVDB para obtener información sobre el vuelo especificado en el mensaje de petición y añade al mensaje de petición información sobre la capacidad, las plazas asignadas y el precio para las clases Turista y Primera, e información sobre el origen y destino del vuelo.
  4. El nodo GetFlightDetails pasa el mensaje de petición modificado, a través del terminal de salida (Out), a la cola MQMD_ReplyToQ.
  5. El nodo GetPassengerDetails accede a la tabla XMLPASSENGERTB en la base de datos RESERVDB para obtener información sobre los pasajeros que tienen reserva en el vuelo especificado en el mensaje de petición, y añade al mensaje de petición una lista de los pasajeros que tienen reserva en el vuelo.
  6. El nodo GetPassengerDetails pasa el mensaje de petición modificado, a través del terminal de salida (Out), a la cola MQMD_ReplyToQ.
  7. El nodo MQMD_ReplyTo comprueba el MQMD de la cabecera del mensaje para ver los valores de ReplyToQ y ReplyToQMgr. El valor de ReplyToQ es XML_FLIGHTQUERY_REPLIES y el valor de ReplyToQMgr es WBRK6_DEFAULT_QUEUE_MANAGER.
  8. El nodo MQMD_ReplyTo transfiere el mensaje a la cola XML_FLIGHTQUERY_REPLIES. Observe que este nombre de cola no está en las propiedades del nodo; está en la cabecera MQMD del mensaje.

El flujo de mensajes XML_FlightQueryIn continúa con la agregación.

Icono de la página principal   Volver al ejemplo Acerca de la Reserva de vuelos