Chamando de forma assíncrona uma operação de serviço da Web JAX-WS
Consulte também
Quando um cliente chama de forma assíncrona uma operação de serviço da Web JAX-WS, não precisa esperar que a resposta seja recebida. Quando um cliente usa esse tipo de comunicação, os serviços da Web são consumidos tanto através da abordagem de "sondagem" quanto da abordagem de "retorno de chamada".
- Sondagem. O cliente chama um método de serviço da 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 um aplicativo GUI.
- Retorno de chamada. O cliente passa por um manipulador de retorno de chamada durante a chamada do método de serviço da Web. O método handleResponse() do manipulador é chamado quando o resultado estiver disponível. Esta abordagem é apropriada para aplicativos 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 da Web de forma assícrona:
- Crie um cliente de serviços da Web.
- Se o cliente de serviços da Web for implantado a partir de um aplicativo da Web, é possível chamar o serviço da Web a partir de um servlet ou de uma página JSP. Se o cliente de serviços da Web for implantado a partir de um aplicativo Java, use um arquivo fonte Java. Adote um dos seguintes procedimentos:
- Crie um arquivo fonte Java, como um servlet.
- Use o arquivo padrão index.jsp gerado quando o aplicativo da Web for criado ou crie um arquivo JSP.
- Na janela Projetos, expanda o nó Referências de serviços da Web, clique com o botão direito do mouse no nó do serviço da Web (o primeiro nó dentro do nó Referências de serviços da Web) e escolha Editar atributos do serviço da Web.
- No editor Editar atributos do serviço da Web, dentro do nó Operações PortType, expanda o nó com o mesmo o mesmo da operação de serviço da Web que deseja chamar.
- Selecione Habilitar cliente assíncrono. Clique em OK.
- Abra o arquivo no Editor de código e adote um dos seguintes procedimentos:
- Expanda o nó Referências de serviços da 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 (para arquivos JSP) do qual deseja chamar o serviço da Web e escolha Recursos do cliente de serviço da Web > Chamar operação de serviço da 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 da Web.
- Consulte também
- Sobre serviços da Web
Notificações legais