Executando a Amostra Nós do Cliente TCPIP
Após ter importado e implementado a amostra, você pode executá-la seguindo as instruções nas seções Executando a Amostra Assíncrona
e Executando a Amostra Síncrona.
Para obter informações sobre as opções de controle de fluxo disponíveis na guia Avançado,
consulte Opções Avançadas.
Para obter uma visão geral de como esses nós funcionam e são configurados, consulte
Visão Geral do TCP/IP na documentação do WebSphere
Message Broker.
Esta amostra também pode ser estendida para comunicar-se com um servidor TCP/IP separado; consulte Estendendo a Amostra Nós do Cliente TCPIP.
Se você encontrar algum problema ao executar a amostra, consulte
Resolvendo problemas ao executar amostras na
documentação do WebSphere Message Broker.
Esta amostra utiliza os fluxos de mensagens TCPIPAsyncIn, TCPIPAsyncOut e TCPIPServerSimulation.
Para executar a amostra:
- Na visualização Desenvolvimento do Intermediário, expanda o TCPIPClientNodesSampleFlowProject.
- Expanda o diretório Testes de Fluxo e clique duas vezes em
TCPIPAsyncTest.mbtest para abrir a mensagem no Cliente de Teste.
Clique em Enfileirar.
- Clique em Enviar Mensagem no painel Propriedades Detalhadas.
Os seguintes eventos ocorrem:
- Uma mensagem de pedido do WebSphere MQ é colocada na fila TCPIP_ASYNC_IN.
Este pedido é lido pelo fluxo de mensagens TCPIPAsyncOut.
- O nó JavaCompute verifica se o nome do host do servidor e o número da porta são especificados no
corpo da mensagem. Estes campos ainda não estão configurados e o nó JavaCompute não tem efeito. Para obter um exemplo de como este nó JavaCompute é utilizado, consulte Estendendo
a Amostra Nós do Cliente TCPIP.
- A mensagem é enviada utilizando o nó TCPIPClientOutput na porta 7777.
Na guia Pedido deste nó, a propriedade Local do ID de Resposta associado
a esta conexão TCP/IP é configurada para o WebSphere MQ ReplyToQ.
- O nó TCPIPServerInput no fluxo TCPIPServerSimulation está atendendo na porta 7777 e aceita a conexão
do nó TCPIPClientOutput.
- O fluxo TCPIPServerSimulation corrige a mensagem incluindo
<ServerUpdate>OK</ServerUpdate>
e envia a mensagem de volta para a porta 7777.
- O nó TCPIPClientInput no fluxo de mensagens TCPIPAsyncIn recebe os dados.
O nó TCPIPClientInput reconfigura a propriedade ReplyToQ do WebSphere MQ a partir do ID de Resposta que está associado à conexão.
- A mensagem é propagada de volta através de um nó MQReply.
- Clique em Desenfileirar.
- Clique em Obter Mensagem no painel Propriedades Detalhadas.
- Verifique se a mensagem atualizada foi enviada de volta sobre o WebSphere MQ com êxito:
- Visualize a mensagem de resposta no painel Propriedades Detalhadas utilizando a visualização Estrutura XML.
- Compare esta mensagem de resposta com a mensagem enviada anteriormente através do evento Enfileirar.
O elemento <ServerUpdate>OK</ServerUpdate> foi incluído na seção Cabeçalho do corpo da mensagem.
Se todas as etapas anteriores forem bem-sucedidas, a amostra estará completa.
Consulte os nós nos três fluxos de mensagens para visualizar como os resultados foram alcançados.
Esta amostra utiliza os fluxos de mensagens TCPIPSync e TCPIPServerSimulation.
Para executar a amostra:
- As partes assíncronas e síncronas desta amostra utilizam o mesmo número de porta, portanto, você deve certificar-se de que os fluxos corretos sejam implementados para a amostra síncrona:
- No WebSphere Message Broker Toolkit, selecione a visualização Brokers.
- Clique com o botão direito do mouse em
TCPIPClientNodesSampleExecutionGroup e clique em
Excluir > Todos os fluxos e recursos.
- Selecione e abra TCPIPClientNodesSampleArchive.bar.
Na guia
Preparar, limpe os fluxos de mensagens TCPIPAsyncIn e TCPIPAsyncOut e
selecione o fluxo de mensagens TCPIPSync.
Assegure que o fluxo TCPIPServerSimulation e
TCPIPClientNodesSampleJavaProject ainda estejam selecionados.
- Clique em Construir e Salvar..., e salve o arquivo BAR.
- Arraste o arquivo BAR para TCPIPClientNodesSampleExecutionGroup.
- Verifique se os objetos a seguir foram implementados:
- Fluxo de mensagens TCPIPSync
- Fluxo de mensagens TCPIPServerSimulation
- TCPIPClientNodesSampleJavaProject
- Na visualização Desenvolvimento do Intermediário, expanda TCPIPClientNodesSampleFlowProject.
- Expanda o diretório Testes de Fluxo e clique duas vezes em TCPIPSyncTest.mbtest para abrir a mensagem no Cliente de Teste.
Clique em Enfileirar.
- Clique em Enviar Mensagem no painel Propriedades Detalhadas.
Os seguintes eventos ocorrem:
- Uma mensagem de pedido do WebSphere MQ é colocada na fila TCPIP_SYNC_IN.
Este pedido é lido pelo fluxo de mensagens TCPIPSync.
- A mensagem é enviada utilizando o nó TCPIPClientOutput na porta 7777.
Diferente do modelo assíncrono, o ReplyToQ não precisa ser explicitamente salvo, já que ele permanece inalterado na árvore de mensagens através deste fluxo síncrono.
- O nó TCPIPClientReceive aguarda por uma resposta do servidor.
- O nó TCPIPServerInput no fluxo TCPIPServerSimulation está atendendo na porta 7777 e aceita a conexão
do nó TCPIPClientOutput.
- O fluxo TCPIPServerSimulation adita a mensagem incluindo
<ServerUpdate>OK</ServerUpdate> e envia a mensagem de volta à
porta 7777.
- O nó TCPIPClientReceive no fluxo de mensagens TCPIPSync recebe os dados.
Na guia Resultado deste nó, a mensagem de resposta é explicitamente incorporada como um elemento de resposta na mensagem original.
- A mensagem é propagada de volta através de um nó MQReply.
- Clique em Desenfileirar.
- Clique em Obter Mensagem no painel Propriedades Detalhadas.
- Verifique se a mensagem atualizada foi enviada de volta sobre o WebSphere MQ com êxito:
- Visualize a mensagem de resposta no painel Propriedades Detalhadas,
utilizando o visualizador de Estrutura XML.
- Compare esta mensagem com a mensagem enviada anteriormente através do evento Enfileirar.
A mensagem de resposta inteira está visível como um elemento de <Resposta> incorporado na mensagem que acompanha os elementos originais Header, SaleList e Trailer.
Expanda essa mensagem de resposta; <ServerUpdate>OK</ServerUpdate>
foi incluído na seção Cabeçalho do corpo da mensagem.
Se todas as etapas anteriores forem bem-sucedidas, a amostra estará completa.
Consulte os nós nos dois fluxos de mensagens para visualizar como os resultados foram alcançados.
Todos os nós TCPIP contêm opções de controle de fluxo em suas guias
Avançado.
Os detalhes a seguir fornecem uma visão geral de como as propriedades de controle de fluxo são configuradas na amostra Nós do Cliente TCPIP:
Fluxo de Mensagens TCPIPAsyncOut
- Nó TCPIPClientOutput
- A propriedade Modificação do Fluxo de Entrada não é modificada.
- A propriedade Modificação do Fluxo de Saída é reservada para utilização pelos nós que seguem este nó no fluxo de mensagens.
Nenhuma outra instância do fluxo pode utilizar este fluxo específico até que o fluxo seja liberado.
Fluxo de Mensagens TCPIPAsyncIn
- Nós TCPIPClientInput
- A propriedade Modificação do Fluxo de Entrada não é modificada.
- A propriedade Modificação do Fluxo de Saída é liberada.
Este fluxo é concluído; ele é, então, liberado de volta para o conjunto.
Fluxo de mensagens TCPIPSync
- Nó TCPIPClientOutput
- A propriedade Modificação do Fluxo de Entrada não é modificada.
- A propriedade Modificação do Fluxo de Saída é reservada para utilização por nós que seguem este nó no fluxo de mensagens, e é liberada no final do fluxo.
As funções do fluxo de mensagens TCPIPSync agem de forma diferente ao fluxo de mensagens TCPIPAsyncOut,
pois o fluxo de mensagens TCPIPSync executa todo seu processamento (entrada e saída) em um único fluxo, em
vez de em subfluxos separados para entrada e saída.
Como resultado, você pode configurar explicitamente quando a conexão de saída é liberada.
- Nó TCPIPClientReceive
- A propriedade Modificação do Fluxo de Entrada não é modificada.
- A propriedade Modificação do Fluxo de Saída não é modificada.
Este fluxo é configurado no nó TCPIPClientOutput;
não é necessário liberar explicitamente o fluxo no nó TCPIPClientReceive.
Fluxo de mensagens TCPIPServerSimulation
- Nó TCPIPServerInput
- A propriedade Modificação do Fluxo de Entrada é reservada e liberada no final do fluxo.
Nenhum novo cliente tem permissão para se conectar neste fluxo específico até que o processamento seja concluído.
- A propriedade Modificação do Fluxo de Saída não é alterada.
- Nós TCPIPServerOutput
- A propriedade Modificação do Fluxo de Entrada não é modificada.
A
modificação dessa propriedade não é necessária, porque a maneira como esse fluxo é tratado já foi configurado
no nó TCPIPServerInput.
- A propriedade Modificação do Fluxo de Saída não é modificada.
Voltar para o Início da Amostra