WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

Ciclo de Vida de Nós de Processamento de Mensagens Definidos pelo Usuários Java

Durante o ciclo de vida dos nós definidos pelo usuário criados em Java™, objetos são criados e destruídos e métodos e classes diferentes são chamados.

Cada nó passa pelos seguintes estágios:

As informações aqui se aplicam aos nós de saída e aos nós de processamento de mensagens. Ambos os tipos de nós podem ser considerados juntos porque, embora um nó de processamento de mensagem geralmente seja usado para processar uma mensagem, e um nó de saída seja usado para fornecer uma saída, na forma de um fluxo de bits, a partir de uma mensagem, é possível usar ambos os tipos de nós para executar qualquer uma destas funções.

Registro

A fase de registro ocorre quando um nó de processamento de mensagem definido pelo usuário que é gravado em Java contata o broker ou se registra no broker.

Sempre que um broker é iniciado, ele carrega todos os arquivos LIL e classes Java relevantes. Para assegurar que um nó de processamento de mensagem seja registrado com o broker, é necessário fornecer o broker com uma classe que implemente a interface MbNodeInterface e esteja contido no caminho de classe usado pelo broker.

Instanciação

Um nó de processamento de mensagem definido pelo usuário Java é instanciado quando um broker implementa um fluxo de mensagens que contém o nó de processamento de mensagem definido pelo usuário. Quando o nó é instanciado, o construtor da classe do nó de processamento de mensagem é chamado.

Quando um nó é instanciado, todos os terminais que você especificou são criados. Um nó de processamento de mensagem pode ter um número ilimitado de terminais de entrada e de saída associados a ele. Você deve incluir os métodos createInputTerminal e createOutputTerminal no construtor do nó para declarar esses terminais.

Os terminais de saída incluem terminais out, failure e catch. Utilize a classe createOutputTerminal dentro do construtor da classe do nó para criar o número de terminais de saída necessário.

Como um mínimo, é necessário criar apenas estes terminais de saída usando sua classe do construtor. Entretanto, se precisar inicializar valores de atributos, também será necessário incluir esse código neste ponto em seu nó de processamento de mensagem.

Se desejar tratar exceções que sejam transmitidas de volta a seu nó de processamento de mensagens, é recomendável fazer isso criando um terminal de falha para o nó de processamento de mensagens definido pelo usuário, utilizando o método createOutputTerminal. É sensato usar o terminal de falha para este processo porque esse é o terminal para o qual erros são propagados.

Certifique-se de que todas as exceções que são capturadas pelo nó de processamento de mensagem sejam tratadas corretamente. Se não incluir um terminal de falha, o nó de processamento de mensagem não tentará tratar a exceção. Se seu fluxo de mensagens não contiver um método de manipulação de exceção, todas as exceções lançadas serão transmitidas de volta ao nó de entrada, onde o nó de entrada lida com as exceções.

Se capturar exceções, certifique-se de que relançou todas as exceções com as quais o nó de processamento de mensagem não pode lidar. Esta ação faz com que a exceção seja transmitida de volta ao nó de entrada para manipulação; por exemplo, quando você deseja retroceder uma transação.

Processando

Durante a fase de processamento do ciclo de vida de um nó de processamento de mensagens definido pelo usuário, o nó de processamento de mensagens toma a hierarquia lógica da mensagem e a processa de alguma forma.

Destruição

Um nó de processamento de mensagem definido pelo usuário Java é destruído quando o nó é excluído ou o broker é encerrado. Não é necessário incluir nada em seu código para especificar que o nó foi fisicamente excluído, porque este processo pode ser tratado pelo coletor de lixo.

Contudo, se quiser ser notificado de que um nó está prestes a ser excluído, você pode utilizar o método onDelete. Talvez você deseje receber uma notificação se o nó tiver recursos que deseja excluir, diferentes daqueles que serão coletados como lixo. Por exemplo, se tiver aberto um soquete, ele não será fechado corretamente quando o nó for excluído automaticamente. Você pode incluir essa instrução no método onDelete, para assegurar que o soquete seja fechado corretamente.

Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:30:30


Tópico de ConceitoTópico de Conceito | Versão 8.0.0.5 | as24999_