terça-feira, 24 de dezembro de 2013

Java EE. Serviços Web SOAP com JAX-WS - parte_02 - EJB

Java EE. Serviços Web SOAP com JAX-WS parte 2 

1 - Devemos criar um Web Service Dentro de modulo de EJB.

2 – Expor como Web Service Beans de Sessão já existentes.


Devemos criar um novo projeto, indo em: Novo projeto, Java EE, logo selecionamos Modulo EJB.

Como mostra a imagem.


Logo colocamos o nome do projeto de ConverterUnidadesVolumen:

Devera aparecer algo como esta na imagem:


Logo criamos um Bean de Sessão, para nos passar dados, criando primeiro um pacote com o nome de com.blog.rafacomjava.convertirunidades.volumen, logo dentro deste pacote uma classe com o nome de ConverirUnidadesEmPeso.


Dentro da classe colocamos as seguintes anotações, para identificar um Bean de Sessão, a classe deve ficar assim:


package com.blog.rafacomjava.convertirunidades.volumen;


import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.jws.WebParam;


@Stateless()
@LocalBean()
public class ConverirUnidadesEmPeso
{
public Double litrosAGalones( double litros)
{
return litros * 2.35;
}


public Double GalonesALitros( double galones)
{
return galones / 2.35;
}
}
Deve ficar algo assim:

Para converter em um Web Service, clicamos novamente com botão direito do mouse no projeto ConverterUnidadesVolumen, logo Novo, Web Service, nome - ConverterUnidadesWS, logo pacote com.blog. rafacomjava.convertirunidades.volumen.ws, clicamos em Criar Web Service a partir do Bean de Sessão:

Clicamos em Procurar:

selecionamos ConverirUnidadesEmPeso.
Clicamos Ok, finalizar.

Deve ficar uma imagem como esta;

vêem-se em Detalhe na próxima imagem o Web Service criado.

Como podemos ver se criou um novo Web Service como cliente.
Podemos agora criar um cliente que acede às informações deste Web Service.

Criando nosso cliente criamos um novo projeto agora como Java Aplicação.


 Logo damos um nome de ClienteJavaAplicacao.

Agora devemos criar nosso Web Service dentro da aplicação Java. Clicando com o botão direito no projeto, novo Web Service, ClienteParaWebService.

Logo Procurar Projeto.

Lembro que a aplicação ConverterUnidadesVolumen deve estar funcionando por que se não Dara erro, pois não poderá ser encontrado o Web Service.

Clicamos em finalizar e deve fiar uma imagem desta forma:


Quase terminando veremos que em Referencias a Web Service seguindo, teremos os métodos.
Pressionamos com o mouse e arrastamos ate a classe ClienteJavaAplicacao. Mas lembrando arraste, pois assim o NetBenas nos vai fazer uma parte do código de forma automática.

Deve ficar algo assim:

em main colocamos:


System.out.println(" Resultado = " + galonesALitros(12.0) );




/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package clientejavaaplicacao;


/**
*
* @author rafael2
*/
public class ClienteJavaAplicacao {


/**
* @param args the command line arguments
*/
public static void main(String[] args) {
System.out.println(" Resultado = " + galonesALitros(12.0) );
}


private static Double galonesALitros(double galones) {
com.blog.rafacomjava.convertirunidades.volumen.ws.ConverterUnidadesWS_Service service = new com.blog.rafacomjava.convertirunidades.volumen.ws.ConverterUnidadesWS_Service();
com.blog.rafacomjava.convertirunidades.volumen.ws.ConverterUnidadesWS port = service.getConverterUnidadesWSPort();
return port.galonesALitros(galones);
}
}


Rodando a aplicação deve ter o seguinte resultado:


ant -f /home/rafael2/projetos2/soa/soa_blog/ClienteJavaAplicacao -Djavac.includes=clientejavaaplicacao/ClienteJavaAplicacao.Java -Drun.class=clientejavaaplicacao.ClienteJavaAplicacao run-single
init:
Deleting: /home/rafael2/projetos2/soa/soa_blog/ClienteJavaAplicacao/build/built-jar.properties
deps-jar:
Updating property file: /home/rafael2/projetos2/soa/soa_blog/ClienteJavaAplicacao/build/built-jar.properties
wsimport-init:
wsimport-client-ConverterUnidadesWS:
files are up to date
wsimport-client-generate:
Compiling 1 source file to /home/rafael2/projetos2/soa/soa_blog/ClienteJavaAplicacao/build/classes
compile-single:
run-single:
Resultado = 5.106382978723404
CONSTRUÍDO COM SUCESSO (tempo total: 2 segundos)


Obrigado a Todos e ate à próxima.

Feliz Natal!!!







Nenhum comentário:

Postar um comentário