Hoje vou mostrar como montar um serviço (Web Service) em Asp.Net, e cosumir o mesmo através da Linguagem Java.
Web Service Asp.Net
Primeiro criamos um projeto no Visual Studio, no meu caso utilizo o VS2010, vá em File->New->Project , na janela Wizard que abrir procure pela aba WEB e selecione ASP.NET Web Service Application:
Após a tela o wizard do Visual Studio vai gerar um serviço HelloWorld, no meu caso alterei para um Serviço que irá devolver um Objeto Livro, implementei a classe Livro dentro da própria classe do Web Service, como segue o código abaixo:
namespace MeuServico { ////// Summary description for Service1 /// [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. // [System.Web.Script.Services.ScriptService] public class Service1 : System.Web.Services.WebService { public class Livro { public int Id { get; set; } public string Nome { get; set; } public string Autor { get; set; } public string AnoDePublicacao { get; set; } public string Editora { get; set; } public int NumeroDePaginas { get; set; } public bool ColocarNaEstante(Livro livro) { try { return true; } catch (Exception e) { throw e; } } } [WebMethod] public Livro getLivro(int Id) { Livro livro = new Livro() { Id = 1, Nome = "Quimica Geral", Autor = "Cat Stevens", AnoDePublicacao = "2006", Editora = "Novembro", NumeroDePaginas = 343 }; return livro; } } }
Feito isso é só rodar a aplicação que vamos ter nosso serviço rodando.
Cliente Java
Já temos o serviço rodando no Visual Studio agora vamos implementar um cliente Java para consumir esse serviço, para isso abra o NetBeans IDE, e contrua um projeto Java Application com o Nome ClientJava, na aba Projects clique com o botão direito, vá em New->Others e procure por Web Service Client, uma janela similar a esta se abrirá:
Pegue o endereço de EndPoint do serviço Asp.Net e coloque no campo WSDL URL, no meu caso esse endereço é http://localhost:6566/Service1.asmx (O endereço que aparece no Browser quando você roda o serviço no Visual Studio), selecione o package no qual será implementado o client e então clique em Finish, na classe Main do projeto, clique com o botão direito na definição da função main e procuro por Web Service Client Resources-> Call Web Service Operation, a tela abaixo se abrirá:
Selecione o método getLivro e clique em OKo código gerado será semelhante a este:
Agora rode o projeto Java e seu serviço am Asp.Net, já está sendo consumido em Java. Essa interoperabilidade é incrivel não é?.
0 comentários:
Postar um comentário