Chamando de forma assíncrona uma operação de serviço Web JAX-WS
Consulte também
Quando um cliente chama de forma assíncrona uma operação de serviço Web JAX-WS, não precisa esperar que a resposta seja recebida. Quando um cliente usa esse tipo de comunicação, os serviços Web são consumidos tanto através da abordagem de "sondagem" quanto da abordagem de "retorno de chamada".
- O cliente chama um método de serviço Web e solicita os resultados repetidamente. A sondagem é uma operação de bloqueio porque bloqueia o segmento que está realizando a chamada, que é a razão pela qual você não quer usá-la em uma aplicação de GUI.
- O cliente passa por um manipulador de retorno de chamada durante a chamada do método de serviço Web. O método handleResponse() do manipulador é chamado quando o resultado estiver disponível. Esta abordagem é apropriada para aplicações de GUI porque não é necessário esperar a resposta. Por exemplo, você faz uma chamada a partir de um manipulador de eventos de GUI e retorna o controle imediatamente, mantendo a interface de usuário receptiva.
Observação: Você pode usar o IDE para gerar métodos assíncronos de esqueleto, conforme explicado abaixo.
Para chamar uma operação de serviço Web de forma assícrona:
- Crie um cliente de serviços Web.
- Se o cliente de serviços Web for implantado a partir de uma aplicação Web, é possível chamar o serviço Web a partir de um servlet ou de uma página JSP. Se o cliente de serviços Web for implantado a partir de uma aplicação Java, use um arquivo de origem de Java. Adote um dos seguintes procedimentos:
- Crie um arquivo de origem de Java, como um servlet.
- Use o arquivo padrão index.jsp gerado quando a aplicação Web for criado ou crie um arquivo JSP.
- Na janela Projetos, expanda o nó Referências de serviços Web, clique com o botão direito do mouse no nó do serviço Web (o primeiro nó dentro do nó Referências de serviços Web) e escolha Editar atributos do serviço Web.
- No editor Editar atributos do serviço Web, dentro do nó Operações PortType, expanda o nó com o mesmo o mesmo da operação de serviço Web que deseja chamar.
- Selecione Habilitar cliente assíncrono. Clique em OK.
- Abra o arquivo no Editor de código-fonte e adote um dos seguintes procedimentos:
- Expanda o nó Referências de serviços Web e continue expandindo os subnós até chegar ao nó que representa a operação assíncrona. Utilizando o mouse, arraste e solte o nó onde for necessário no arquivo.
- Clique com o botão direito do mouse no método (para arquivos Java) ou no Editor de código-fonte (para arquivos JSP) do qual deseja chamar o serviço Web e escolha Recursos do cliente de serviço Web > Chamar operação de serviço Web. A caixa de diálogo Selecionar operação para chamada será exibida. Expanda os nós e selecione a operação assíncrona. Clique em OK.
O IDE adiciona ao arquivo o código necessário para chamar de forma assíncrona o serviço Web.
- Consulte também
- Sobre serviços Web
Notificações legais