Padrões de Troca de Mensagem do Web Services Addressing
A especificação World Wide Web Consortium (W3C) Web Services Addressing (WS-Addressing) define explicitamente as propriedades de núcleo do WS-Addressing para os Message Exchange Patterns (MEPs) definidos pelo WSDL 1.0. Esses MEPs são resumidos neste tópico, ilustrando as propriedades obrigatórias do WS-Addressing para cada padrão.
MEP Unidirecional
<operation name="myOperation">
<input message="tns:myInputMessage"/>
</operation>
Nome de Abstract WS-Addressing MAP, usando a convenção notacional do Conjunto de Informações W3C XML | Descrição para uma mensagem de entrada unidirecional |
---|---|
[ação] | A ação WS-Addressing que é gerada de acordo com a versão da especificação WS-Addressing que está em uso. |
[terminal de respostas] | O terminal de respostas do WS-Addressing que indica que nenhuma resposta é esperada para essa mensagem de entrada. O valor dessa MAP depende da versão da especificação WS-Addressing em uso. |
[ID de mensagem] | Um identificador de mensagem gerado exclusivamente. Embora não exigido pela especificação, o tempo de execução do WebSphere Application Server configura esse valor automaticamente. |
Embora a operação WSDL para essa troca de mensagens não especifique nenhuma resposta, as mensagens relacionadas podem ser enviadas como parte de outras trocas de mensagens. Especificamente, os aplicativos podem utilizar as MAPs do terminal de respostas ou do terminal de falhas do WS-Addressing para indicar ao destino de uma mensagem unidirecional o local para o qual enviar as mensagens relacionadas. Para propagar um terminal de respostas ou um terminal de falhas, associe a propriedade apropriada ao contexto de pedido do objeto BindingProvider do JAX-WS ou ao objeto Stub ou Call do JAX-RPC, conforme descrito em Especificando e Adquirindo Message-addressing Properties Utilizando SPIs do Web Services Addressing de Propriedade da IBM, para substituir os padrões.
Pedido-Resposta Bidirecional
<operation name="myOperation">
<input message="tns:myInputMessage"/>
<output message="tns:myOutputMessage"/>
<fault="tns:myFaultMessage"/>
</operation>
<operation name="myOperation">
<input message="tns:myInputMessage"/>
<output message="tns:myOutputMessage"/>
</operation>
<operation name="myOperation">
<input message="tns:myInputMessage"/>
<fault="tns:myFaultMessage"/>
</operation>
Nome de Abstract WS-Addressing MAP, usando a convenção notacional do Conjunto de Informações W3C XML | Descrição da mensagem de entrada de uma operação de solicitação-resposta |
---|---|
[ação] | A ação WS-Addressing gerada de acordo com a versão da especificação WS-Addressing que está em uso. |
[ID de mensagem] | Um identificador de mensagem gerado exclusivamente. |
Nome de Abstract WS-Addressing MAP, usando a convenção notacional do Conjunto de Informações W3C XML | Descrição da mensagem de entrada de uma operação de solicitação-resposta |
---|---|
[ação] | A ação WS-Addressing gerada de acordo com a versão da especificação WS-Addressing que está em uso. |
[relationship] | Um conjunto de relacionamentos contendo um relacionamento de resposta para o ID de mensagem transmitido na mensagem de pedido. |
[ID de mensagem] | Um identificador de mensagem gerado exclusivamente; embora não exigido pela especificação, o tempo de execução do servidor de aplicativos configura essa propriedade automaticamente. |
Pedido-Resposta Síncronos

Para chamadas síncronas de JAX-WS, se você configurar o terminal de respostas ou o terminal de falhas, a referência de terminal configurada deverá utilizar o URI anônimo. Se a referência de terminal não usar URI anônima, uma exceção javax.xml.ws.WebServiceException será lançada. Embora a referência de terminal use o URI anônimo, é possível usar os parâmetros de referência dentro da referência de terminal para destinar a resposta ou o terminal de falha.
- Você não possui o WS-Security ativado ou não utilizou uma ferramenta de montagem para especificar que os elementos ReplyTo e FaultTo da mensagem SOAP devam ser assinados. Nessa situação, é possível que um terminal JAX-WS seja utilizado para enviar mensagens a um terceiro, tomando parte potencialmente em um ataque de Negação de Serviço. Para evitar esses ataques, especifique o padrão de troca de mensagens síncronas e ative o WS-Policy para que os clientes saibam sobre este requisito.
- Um cliente JAX-WS se comunica através do dispositivo NAT. Os URIs nos elementos ReplyTo ou FaultTo da mensagem SOAP não podem ser roteados através desse dispositivo. Nesta situação, o cliente deve utilizar o URI anônimo definido pela especificação WS-Addressing e um padrão de troca de mensagens síncronas. Para garantir que o cliente esteja de acordo com esses requisitos mesmo que o servidor utilize o WS-Policy para solicitar um URI não anônimo no elemento ReplyTo, especifique o padrão de troca de mensagens síncronas no cliente.
Pedido-Resposta Assíncronos
O modelo de programação JAX-RPC 1.0 não permite respostas ou falhas assíncronas para uma operação de pedido-resposta bidirecionais.

![[Windows]](../images/windows.gif)
- Aplicando e configurando um conjunto de políticas do WS-Addressing. Consulte o tópico Configuração da Política do WS-Addressing.
- Configurando a propriedade com.ibm.websphere.webservices.use.async.mep no contexto de solicitação do cliente. Consulte o tópico Chamada Assíncrona de Serviços da Web JAX-WS.
- Pelo uso de elementos do descritor de implementação, de anotações @Addressing, de recursos de endereçamento ou incluindo as asserções do WS-Policy no documento WSDL. Consulte o tópico Ativando o Suporte de Endereçamento de Serviços da Web para Aplicativos JAX-WS e seus tópicos filhos.
- O compartilhamento do WS-Policy estiver ativado.
- O compartilhamento do WS-Policy não estiver ativado, mas:
- O WSDL compactado (recuperado por uma solicitação HTTP GET) contiver as informações de política relevantes.
- As anotações @Addressing tiverem sido usadas no código. Nesse caso, o tempo de execução do servidor gerará um documento WSDL contento os anexos do WS-Policy.