Sobre o Fluxo de Mensagens XML_FlightQueryIn
O XML_FlightQueryIn é um fluxo de mensagens de fan-in no exemplo de agregação, XML_FlightQuery. O XML_FlightQuery
é construído a partir de três fluxos de mensagens curtos que comunicam-se através da colocação e da
obtenção de mensagens das filas do WebSphere MQ. Os três fluxos de mensagens do XML_FlightQuery
são:
- XML_FlightQueryOut, o fluxo de mensagens de fan-out, que gera e difunde dois pedidos relacionados de informações sobre vôo e informações sobre o passageiro.
- XML_FlightQueryReply, que localiza as informações
necessárias para responder aos dois pedidos.
- XML_FlightQueryIn, o fluxo de mensagens de recepção, que combina as
respostas em uma única mensagem de resposta.
A mensagem de entrada para o XML_FlightQuery solicita informações sobre um vôo específico
e detalhes sobre os passageiros com assentos reservados no vôo.
A figura a seguir mostra o fluxo de mensagens XML_FlightQueryIn.

A tabela a seguir lista os tipos de nós que são utilizados no fluxo de mensagens XML_FlightQueryIn.
Tipo de Nó |
Nome do Nó |
MQInput |
XML_FLIGHTQUERY_REPLIES |
AggregateReply |
AggregateReplies |
Compute |
BuildOutputMessage; ProcessTimeout |
MQOutput |
XML_FLIGHTQUERY_OUT; XML_FLIGHTQUERY_TIMEOUT; XML_FLIGHTQUERY_FAIL |
Para obter informações adicionais, leia sobre os nós no fluxo de mensagens XML_FlightQueryIn na documentação do WebSphere Message Broker. Para consultar o ESQL utilizado nesse fluxo de mensagens, consulte Criando o fluxo de mensagens XML_FlightQueryIn.
O fluxo de mensagens XML_FlightQueryIn executa as seguintes ações:
- O nó XML_FLIGHTQUERY_REPLIES obtém as duas mensagens de resposta da fila XML_FLIGHTQUERY_REPLIES, então, transmite cada mensagem de resposta, através do terminal Saída, para o nó AggregateReplies. Como alternativa, se uma exceção for lançada no
recebimento de dados e a mensagem for retrocedida para cá, o nó XML_FLIGHTQUERY_REPLIES
transmitirá a mensagem, através do terminal Capturar, ao nó XML_FLIGHTQUERY_FAIL, que coloca a mensagem na fila XML_FLIGHTQUERY_FAIL.
- O nó AggregateReplies combina as duas mensagens de resposta em uma única mensagem de resposta agregada, então, transmite a mensagem de resposta agregada, através do terminal Saída, para o nó BuildOutputMessage. Se a agregação exceder o tempo limite porque nem todas as respostas chegaram no intervalo de tempo limite (especificado nas propriedades do nó
AggregateReplies), o nó AggregateReplies transmitirá a mensagem agregada incompleta,
através do terminal Tempo Limite, para o nó ProcessTimeout.
O nó ProcessTimeout, então, transmite a mensagem para o nó XML_FLIGHTQUERY_TIMEOUT,
que coloca a mensagem na fila XML_FLIGHTQUERY_TIMEOUT.
- O nó BuildOutputMessage constrói uma mensagem de saída única a partir das informações na mensagem de resposta agregada. A mensagem de saída contém o número e a data do vôo; a capacidade, número de
poltronas reservadas e o preço da poltrona para cada classe; uma lista de nomes
de passageiros e seus números de reservas.
- O nó BuildOutputMessage transmite a mensagem de saída, através do terminal Saída, para o nó XML_FLIGHTQUERY_OUT, que coloca a mensagem de saída na fila XML_FLIGHTQUERY_OUT.
Voltar para Sobre a Amostra Reservas Aéreas