Web Services em Java

12 respostas
G

Pessoal,

Queria saber se tem alguma forma fácil e didática de se criar web services em Java.

Tenho procurado tutoriais, mas a maioria são longos e enfadonhos. Li alguma coisa sobre o Axis, mas mais uma vez, os materiais que encontrei levam páginas e mais páginas para mostrarem alguma coisa sobre o tema.

O que eu quero é apenas um exemplo didático de como, por exemplo, acessar um web service que receba 2 números, some e devolva o resultado. Como posso criar esse web service e acessá-lo através de código Java? Alguém conhede um tutorial bem simples assim? Apenas que me dê o básico sobre o tema?

Desde já, agradeço!

12 Respostas

Flavio_machine

Espero que te ajude.

http://netbeans.org/kb/trails/web.html

JoaoBluSCBR

Voce tem razao, as pessoas que fazem tutoriais acham que estao fazendo um favor e esquecem que há uma responsabilidade, que quem vai ler conta com aquela informacao. Se nao quer fazer direito, nem faça.

Eu tive de lutar muito para conseguir acertar usando os tutoriais que achei. A maioria começava bem. O cara mostrava a estrutura do projeto e seguia certos passos. Mas daqui a pouco ele já esquecia e nem falava mais na estrutura, onde colocar os arquivos, ou esquecia que tinha mudado ela e os comandos retornavam erros por que nao encontravam arquivos naqueles caminhos especificados nos comandos. Lá saía eu colando cópias por todo o projeto para ver se o comando enxergava.

Como meu objetivo era fazer um ws para uma colega em seu TCC. Resolvi tentar alguns, adaptar e fazer umas anotações. Vou postar isso, quem sabe te ajude.

Bem, mas a verdade é que os tutoriais de ws são extensos mesmo, pois são várias etapas para criação, adaptação e publicação. Não tem como simplesmente escrever isso em uma página.

JoaoBluSCBR

Este documento tem minhas anotações que fiz para explicar o processo para a minha colega.

JoaoBluSCBR

E este foi um dos melhores que encontrei na Web, mas tinha erros e tive de ir adaptando.

JoaoBluSCBR

E tem esse que tem algumas coisas boas.

JoaoBluSCBR

E tem esse que já eh para acessar via celular (J2ME), que era o objeto do TCC da minha colega.

Nesse caso, nao lembro bem o que diz esse texto, mas encontrei um que explicava como usar ksoap e kxml, duas bibliotecas que permitem acessar ws via celular e foi fantastico, funcionou perfeitamente o projeto.

JoaoBluSCBR

Só reforçando, não espere encontrar um tutorial com 2 páginas.

WS são complexos. Tem que criar, adaptar e publicar. Tudo isso tem
que ser explicado.

Tem aqueles que você cria a classe java, muda a extensao do arquivo para jws (acho que é isso).

Joga ele no servidor e beleza ta funcionando e até faz esse negocio de somar 2 numeros.

Mas isso não serve pra muito mais do que brincar de ws.

assim:

Implementando um Web Service simples

O objetivo é aprender, então será criado um serviço bem simples. O serviço é a soma de duas variáveis inteiras retornando o resultado. Este exemplo poderá servir para qualquer outra implementação. Abaixo está a classe implementada. O nome do arquivo é Servico.java:

public class Servico { public int soma(int valor1, int valor2) { return valor1 + valor2; } }

Agora só falta disponibilizá-lo no nosso servidor para o mundo acessar. E, para fazer isso, deve-se alterar o nome do arquivo de Servico.java para Servico.jws, coloca-lo no diretório: CATALINA_HOME / webapps / axis / e iniciar o servidor, se ele já não estiver iniciado. Se já estiver iniciado, o seu Web Service está publicado.
Os arquivos. jws são lidos pelo Axis e representam Java Web Services. O Axis se baseará nesses arquivos (. jws) para criar os arquivos de definição WSDL. Todos os métodos públicos existentes nessas classes serão automaticamente disponibilizados para terceiros.

Flavio_machine

Muito bom , vou ler aqui.

G

Pessoal, desde ja obrigado pela ajuda!

vou ver se tenho um tempinho hj a noite pra dar uma olhada, ok?

Valeu mesmo pela força!

FernandoFranzini

A questão é que Web service não tão simples assim…pegar um tutorial de 2 paginas gerando tudo…vc vai ficar na mão. Vc consegue fazer web service em Java sem escrever 1 linha de código de infra, gerando tudo…mas terá que saber como a coisa funciona por de traz.
Nesse link http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/ vc expõe 1 classe para SOAP sem fazer nada, subindo um sevidor http para teste. em 1 minuto…

G

Pessoal,

To meio sem tempo e nao li quase nada ainda… Mas vi que pelo netbeans a gente pode criar webservices. Eu criei um que faz a soma que falei pra voces. ele le duas strings passadas por parametro e na classe que implementa o serviço de soma ele usa Integer.parseInt(numeroString) para converter os dois numeros para inteiros, somar e depois devolver os dois como String novamente.

Vou dar agora uma olhadinha pra ver como posso acessar com o java, que era o que eu queria desde o início. To vendo que o pessoal usa um tal de axis, voces recomendam? É a forma mais fácil? Vi que pelo Android parece ser bem facil de se acessar um WS. Ainda nao tive tempo de parar pra ler o que voces postaram por conta de um trabalho que tenho que entregar, mas assim que der, vou dar uma lida!

Obrigado a todos vocês desde já!

saoj

http://www.seducaotecnologica.com.br/tutorial-soa-passo-a-passo-1/

Criado 29 de setembro de 2011
Ultima resposta 2 de out. de 2011
Respostas 12
Participantes 5