Exercício 1.3: Criando o Serviço da Web
Antes de iniciar, é necessário concluir o Exercício 1.2: Criando um Servidor e Configuração de Servidor para JMS.
O documento WSDL descreve onde o serviço Web é
implementado e quais operações este serviço fornece. Para criar o documento WSDL, o arquivo do descritor de implementação, o proxy e o exemplo, siga estas etapas:
- Clique em File (Arquivo) > New (Novo) > Other (Outro). Selecione Web Services (Serviços da Web) para exibir os diversos assistentes de serviço da Web. Selecione o assistente Web Service (Serviços da Web). Clique em Next (Avançar) para iniciar o assistente Web Service (Serviço da Web).
- No campo Web service type (Tipo de serviço da Web), certifique-se de que EJB Web service (Serviço da Web EJB) esteja exibido e que as caixas de opções a seguir estejam selecionadas:
- Start Web services in Web project (Iniciar serviços da Web no projeto da Web)
- Generate a proxy (Gerar um proxy)
- Create folders when necessary (Criar pastas quando necessário)
Não selecione Test the Web Service (Testar o Serviço da Web); o Web Services Explorer que é utilizado para testar serviços da Web não suporta SOAP no JMS.
- Na página de seleção Object (Objeto), o JMSEAR deve ser preenchido e o bean TestEJB deve ser listado na tabela EJB Bean (Bean EJB).
Selecione TestEJB e clique em Next (Avançar).
- A página Web Service Deployment Configurations (Configurações de Implementação do Serviço da Web) permite selecionar a partir de protocolos de tempo de execução e servidores de implementação suportados. Você utilizará o ambiente de tempo de execução padrão,
o IBM WebSphere v6 e o servidor criado na tarefa anterior, WebSphere v6 Server. Certifique-se de que o EJB e os projetos do cliente (em que o tipo Cliente é Web) selecionados correspondam àqueles na figura abaixo. Como o assistente cria o projeto do cliente para você, você pode digitar manualmente o nome do projeto do cliente. Clique em Next (Avançar).

- Na página Web service EJB configuration (Configuração EJB do serviço da Web), o projeto Router (Roteador) importado como parte do JMSEAR deve ser selecionado. Em Select Transports (Selecionar Transportes), selecione SOAP over JMS (SOAP no JMS).
A maioria das informações requeridas nesta seção devem ser preenchidas. Será necessário
digitar manualmente os seguintes valores:
- Certifique-se de que queue (fila) esteja selecionado como o destino JMS. Esta amostra não funcionará para tópicos.
- jms/ws_tutorial_queue como o Nome JNDI de Destino
- jms/ws_tutorial_qcf como o Connection Factory JMS
- TestEJB como o nome do componente da porta ao qual será feito o dispatch do pedido. O nome do componente da porta é o nome do serviço de destino, portanto, TestEJB
será utilizado como nome do serviço de destino.
- eis/ws_tutorial_JMSRouter como o Nome JNDI ActivationSpec
A página concluída deve ser semelhante à seguinte:

- Na página de identificação do Java Bean de Serviços Web do assistente, é possível especificar o URI do seu serviço Web, o escopo e os nomes dos arquivos gerados.
Você pode também selecionar os métodos que serão incluídos no seu serviço da Web, o estilo de codificação e configurar a segurança para o seu serviço da Web. Clique em Next (Avançar) para aceitar os valores padrão.
Importante: O URI (Uniform Resource Identifier)
para seu serviço da Web é automaticamente gerado pelo
assistente do artefato selecionado para ser transformado em um
serviço da Web. O URI base padrão
http://tempuri.org/ é utilizado na construção de um URI sem qualquer associação
exclusiva com uma entidade. O tempuri do nome de host a partir de especificação WSDL e significa URI temporário. Utilize o URI base padrão quando não quiser tornar o URI globalmente exclusivo. Não é recomendável utilizar http://tempuri.org/ como a base para entidades
fixas estáveis.
- Como JMS não está em conformidade com WS-I, a não ser que você tenha definido suas configurações de conformidade WS-I para Ignore (Ignorar), uma mensagem de erro será exibida avisando sobre a inconformidade. Se você clicar em Details (Detalhes), o motivo para a mensagem de aviso será mostrado. Você pode seguramente ignorar esse aviso; clique em Ignore (Ignorar).
- Na página Web Service Proxy (Proxy do Serviço da Web), certifique-se de que Generate a proxy (Gerar um proxy) esteja selecionado. O proxy do cliente fornece uma interface de
chamada de procedimento remoto para o serviço da Web. Não ative a segurança
para o proxy gerado.
Clique em Next (Avançar).
- Utilize a página de teste Web Service Client (Cliente de Serviço da Web) para selecionar as seguintes opções:
- Selecione gerar um JSP de amostra do serviço da Web de amostra como seu recurso de teste.
- Selecione a pasta em que o JSP estará localizado e certifique-se de que todos os métodos sejam incluídos no JSP.
- Selecione Run test on server (Executar teste no servidor) para iniciar o servidor automaticamente.
Clique em Finish (Concluir).
- O JSP proxy é ativado em um navegador da Web na seguinte URL:
http://localhost:9080/JMSClient/sample/TestEJB/TestClient.jsp Você pode utilizar
este aplicativo de amostra para testar o serviço da Web selecionando um método, digitando
um valor para o método e clicando em Invoke (Chamar). O resultado do método
- um eco da cadeia digitada no campo de texto - será exibido na área de janela de
resultados.
Conclua este tutorial revisando os materiais no Resumo.