Combine uma mensagem recebida com o conteúdo de um arquivo XML, usando campos
na mensagem para determinar qual arquivo usar.
Antes de iniciar: Coloque um arquivo no sistema de arquivos que é
local ao broker, para o nó FileRead a ser lido. Aqui
está um exemplo do conteúdo do arquivo:
<Data>Detalhes da compra</Data>
Neste
exemplo, o conteúdo dos dados na tag de dados é inserido na mensagem recebida. Qualquer
estrutura XML válida pode ser incluída nessa seção.
Tome nota do caminho para o
arquivo. Por exemplo: c:\temp\FileRead\task3.xml ou
/tmp/FileRead/task3.
Crie as seguintes filas no gerenciador de
filas do broker:
- FILEREAD.TASK3.IN1
- FILEREAD.TASK3.OUT1
Informações detalhadas sobre como configurar o nó são fornecidas nos
painéis de propriedade para o nó, no WebSphere Message Broker Toolkit.
- Crie um fluxo de mensagens que contenha um nó
MQInput,
FileRead e
MQOutput.
- Conecte os terminais da seguinte forma:
- Conecte o terminal Out do nó MQInput
ao terminal In do nó FileRead.
- Conecte o terminal Out do nó FileRead ao
terminal In do MQOutput.
- Configure o nó MQInput:
- No painel Básico, configure o nome da fila como FILEREAD.TASK3.IN1
- No painel Análise de Mensagem de Entrada, configure o domínio como XMLNSC.
- Configure o nó FileRead.
- No painel Básico, configure o nome do arquivo e diretório para referir-se ao arquivo
XML. Por exemplo: c:\temp\FileRead e
task3.xml ou /tmp/FileRead e task3.
- Configure o painel Resultado:
- Configure o local de dados de resultado como $ResultRoot/XMLNSC/Data
- Configure o local de dados de saída como $InputRoot/XMLNSC/Data
- Configure o painel Análise de Mensagem de Entrada:
- Configure o domínio como XMLNSC
- Configure o nó MQOutput:
- No painel Básico, configure o nome da fila como FILEREAD.TASK3.OUT1
- Implemente o conjunto e o fluxo de mensagens.
- Altere os campos Diretório e Nome para o local correto do arquivo e depois
coloque a seguinte mensagem XML na fila FILEREAD.TASK2.IN1:
<Fatura>
<Directory>c:\temp\FileRead</Directory>
<Name>task2.xml</Name>
<Data/>
</Fatura>
O broker roteia a mensagem para a fila FILEREAD.TASK3.OUT1 e insere os dados
do arquivo no campo de dados da mensagem de saída:
<Fatura>
<Directory>c:\temp\FileRead</Directory>
<Name>task2.xml</Name>
<Data>Detalhes da compra</Data>
</Fatura>