Nesse post vou demonstrar como criar um pequeno web services usando o eclipse.
O que são web services ?

Trata-se de pedaços de lógica de negócio localizada em algum local na web acessada através de padrões baseado em protocolos da Internet como HTTP/SMTP.
Usa três tipo de tecnologia: SOAP, WSDL, UDDI.

  • SOAP (Simple Object Access Protocolo) prover uma estrutura padrão para transportar XML, além de outros tipos de documentos. Assim com um padrão único de transporte heterogenos clientes e servidores podem ser interconectados como exemplo clientes .NET invocando métodos em servidores JAVA.
  • WSDL (Web Service Description Lenguage) trata-se de um XML que descreve a interface padronizada do webservice. Como exemplo o WSDL representa INPUTS e OUTPUTS invocadas externamente.
  • UDDI (Univesal Description, Descovery and Integration) provê um registro do webservice para que outros webservices descrevam, descubra e integre o webservice.
Os webservices são altamente distribuídos sendo Arquitetura Orientada a Serviços (SOA). Autores chamam de "O sonho" da computação distribuída.

Um exemplo prático disso imagine uma empresa A que aluga carros. Uma empresa B é responsável por vender pacotes de viagens. Ambas possuem um portal na internet que a empresa A aluga carros pela internet e a empresa B vende pacotes de viagens. Um cliente quer viajar para o exterior e de preferência queria alugar um carro para passar as férias. Nos dias atuais o site B vende a passagem e para alugar um carro o cliente deve procurar outros sites. Se o site que aluga carro implementar um webservice esse serviço pode ser oferecido para diversas outras empresas onde simplesmente chamariam um método (alugar carro) passando os dados que o cliente quer para que o carro seja alugado sem precisar sair do site B.

Usando o eclipse para implementar um webservices.

Vamos no eclipse -> New -> Dynamic web project. Criaremos um projeto dynamico básico.

Após criar o projeto vamos criar um class chamada Calculadora. Nosso pequeno webservice será o "Cara" para fazer operações de somar, subtrair hehe.

Implementamos os métodos básico na class Calculadora.

public double Somar(double a, double b) {
return a + b;
}
public double Subtrair(double a, double b) {
return a - b;
}

Com a Class gerada vamos novamente em New -> Others -> Web Services -> Web service e clicamos em NEXT.



Na próxima janela arrastaremos o split para test server e no botão browser vamos apontar para a class Calculadora. Observe que existe também a opção para o client mas isso será em um próximo post.



Depois disso clicamos em Finish. Nosso webservice já estará criado. Será apresentada uma janela para que possamos startar nosso webservice caso o tomcat não esteja start. Só clicar no botão start server.
Obs.: Para publicar imaginamos que você tenha configurado o tomcat apache corretamente no eclipse e que tenha as lib Axis do apache que vem com o Eclipse 3.3 adiante.



Após isso aparecerá a janela do Web Service Explorer. Click em Launch para abrir o navegado.


Em seguida aparecerá o Explorer. Nele visualizamos todos nossos serviços oferecido com na imagem abaixo.



Por enquanto nosso webservice só contém o serviço de calculadora. Para testarmos clicaremos em um dos métodos (Somar, Subtair) e entraremos com o Input. A tela é intuitiva.

Como resultado nosso webservice funcionando perfeitamente.



Abraço, até a próxima.