Use este tópico para criar uma mediação que escolha uma rota de encaminhamento específica para uma mensagem.
Antes de Iniciar
Para obter uma introdução para utilizar mediações com o barramento de integração de serviço, consulte Aprendendo Sobre Mediações. Para obter detalhes sobre como instalar uma mediação no WebSphere Application Server e
associá-la a um destino de barramento, consulte Trabalhando com Mediações.
Este
tópico presume que você esteja familiarizado com o uso de um ambiente de desenvolvimento de bean de sessão Java EE (Java Platform, Enterprise Edition),
como o ferramentas de montagem ou IBM® Rational Application Developer.
Sobre Esta Tarefa
Uma mediação de roteamento é um aplicativo de mediação que contém um manipulador de roteamento. Associe uma mediação de roteamento a um destino do barramento de integração de serviços e use a mediação para escolher uma rota específica dentre diversas rotas disponíveis. Por exemplo, ao criar uma nova configuração de serviço de saída ou modificar uma configuração de serviço de saída existente é possível aplicar uma mediação de seleção de porta para escolher uma porta de saída específica dentre as diversas portas que estão disponíveis para o serviço de saída.
Para criar uma mediação de roteamento, use um ambiente de desenvolvimento de bean de sessão Java Platform, Enterprise Edition (Java EE) para concluir as seguintes etapas:
Procedimento
- Crie um projeto de manipulador de mediação vazio. Isto cria o projeto e cria a classe de rotina de tratamento que implementa a interface de rotina de tratamento. Para obter instruções sobre como fazer isso, consulte Gravando a Rotina de Tratamento de Mediação.
- Utilize a área de janela de mediação no descritor EJB para definir a classe do
manipulador como um manipulador de mediação.
Nota: Ao fazer isso, você especifica um nome pelo qual a lista de rotinas de tratamento de mediação é conhecida. Anote este nome para referência posterior quando você criar a mediação no barramento.
- Inclua a função de roteamento no manipulador. Antes de iniciar, revise Incluindo uma Função de Mediação no Código do Manipulador, em especial o subtópico Trabalhando com o Contexto da Mensagem.
Inclua instruções de importação na classe manipuladora e modifique o método de manipulação, incluindo seu código de roteamento. Especifique o destino de roteamento, incluindo esse destino à frente da lista de caminhos de roteamento de encaminhamento. A lista de caminhos de roteamento de encaminhamento está disponível no contexto da mensagem. Por exemplo:
import javax.xml.rpc.handler.MessageContext;
import com.ibm.websphere.sib.mediation.handler.MediationHandler;
import com.ibm.websphere.sib.mediation.handler.MessageContextException;
import com.ibm.websphere.sib.mediation.messagecontext.SIMessageContext;
import com.ibm.websphere.sib.SIMessage;
import com.ibm.websphere.sib.SIDestinationAddress;
import com.ibm.websphere.sib.SIDestinationAddressFactory;
import java.util.List;
public class RouteMediationHandler implements MediationHandler {
public boolean handle(MessageContext ctx) throws MessageContextException {
SIMessageContext siCtx = (SIMessageContext) ctx;
SIMessage msg = siCtx.getSIMessage();
List frp = msg.getForwardRoutingPath();
try {
SIDestinationAddress destination =
SIDestinationAddressFactory
.getInstance()
.createSIDestinationAddress(
"RoutingDestination", //this is the name of the target destination
false);
frp.add(0, destination);
} catch(Exception e) {
return false;
}
msg.setForwardRoutingPath(frp);
return true;
}
}
Para obter informações adicionais sobre as classes de tecnologias de integração de serviços, incluindo as classes de manipuladores de mediação e de contexto da mensagem, consulte a Documentação Gerada da API - Interfaces de Programação de Aplicativos.
- Exporte o aplicativo corporativo de mediação de roteamento.
O que Fazer Depois
Agora você está pronto para instalar sua mediação no
WebSphere Application Server e
associá-la a um destino de barramento, conforme descrito em
Trabalhando com Mediações.