Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Há muitas maneiras de lidar com o envio de mensagens SOAP recebidas para o serviço apropriado. Os dois mecanismos mais simples são o despacho ao nível de transporte e o despacho por endereço e ação.
Gestão de transporte ao nível operacional
Com o despacho de nível de transporte, o servidor HTTP subjacente (como o HTTP API) é usado para gerenciar o roteamento de solicitações para o dispositivo e seus serviços. O servidor fornece um URL diferente para cada serviço e para o dispositivo, e diferentes pontos de destino são registados para cada URL. Isso permite que o código seja projetado de modo que cada serviço seja isolado do outro, seja executando como componentes separados dentro do mesmo processo ou executando como processos separados.
O despacho de nível de transporte tem algumas vantagens. As mensagens podem ser enviadas para o componente apropriado sem primeiro analisar o envelope SOAP ou o corpo da mensagem. Além disso, o mecanismo existente para rotear mensagens fornecido pela maioria das implementações de servidor HTTP pode ser reutilizado, o que significa que o código de despacho personalizado é desnecessário. Ele também isola o código de processamento SOAP entre serviços, o que fornece um nível de segurança, já que serviços seguros evitam que as mensagens viajem através de código comum.
Endereço e despacho de ações
O encaminhamento de endereços e ações depende dos cabeçalhos SOAP para determinar o serviço apropriado ao qual a mensagem é direcionada. Este modelo também pode usar informações adicionais, como parâmetros de referência, para ajudar ainda mais no despacho.
Esse modelo incentiva a reutilização de código em uma pilha de mensagens em camadas, já que todo o código até o processador SOAP é compartilhado por todos os serviços. Além disso, endereços de transporte distintos para serviços não são necessários, o que significa que os endereços UUID podem ser usados para pontos de extremidade de serviço. O despacho de endereço e ação também se traduz mais diretamente em um modelo de programação. Os desenvolvedores podem conectar serviços e dispositivos em um único componente que gerencia o roteamento, em vez de ter que se vincular a uma camada HTTP ou criar componentes separados para cada serviço.