WEB SERVICES EJB 3.0

Imagen de yagoDeOz

Saludos Cordiales,

Como estas compañeros, como todos sabemos en la actualidad existen diversas formas de realizar web services... que puede ir desde muy complejas hasta la mas sencilla como el desarrollo de web services JEE... les comparto un ejemplo muy simple esperando que les sirva pues esto solo es un :jawdrop: del poder de esta tecnología.

Herramientas a usar:

Eclipse o blog de notas o con que puedan editar texto
JBOSS o cualquier Servidor de aplicaciones JEE
Ganas de aprender.

El ejemplo esta hecho con Eclipse, lo primero que vamos a hacer es crea un proyecto EJB

Se adjuntan las imagenes de como crear el proyecto y los dos componentes EJB el session bean y su interfaz remota

Me enfocare a detallar las clases necesarias
Primero creamos la interfaz que me permiten publicar la firma del método que expondré como web service provider


package com.ws.ejemplos;

import javax.ejb.Remote;
import javax.xml.soap.SOAPException;

@Remote
public interface IServicios {

public String saludar(String nombre)throws SOAPException;
}

Como se daran cuenta es una simple interfaz con la anotacion remota de EJB....

Luego crearemos el session bean que implementa la interfaz y define el método, este web service solo saluda y envía un mensaje como un string
como sigue:


package com.ws.ejemplos;

import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.xml.soap.SOAPException;
import javax.jws.soap.SOAPBinding;

@Stateless
@WebService()
@SOAPBinding(style = SOAPBinding.Style.RPC, use = SOAPBinding.Use.LITERAL)
public class Servicios implements IServicios {

@WebMethod
public @WebResult(name = "saludoFinal")
String saludar(@WebParam(name = "nombreUsuario") String nombre)
throws SOAPException {
// TODO Auto-generated method stub
return "Hola " + nombre;
}
}

Detallo un poco las anotaciones (recordemos que ya no hay ese engorroso xml solo anotaciones)

@Remote: Permite publicar los metodos expuestos en la interfaz de manera remota
@Stateless: Permite crear un session bean sin estado
@WebService: Expone el EJB como un servicio web
@WebMethod: Expone el método en el servicio web
@WebParam: Controlan parámetros en el WSDL
@SOAPBinding: Indica el stylo del web service en este caso usamos el protocolo SOAP, despues les enseñare como hacerlo con REST
@WebResult: Aqui indico el nombre del dato a retornar..

Bueno como les dije solo es un abre-boca si necesitan conocer mas acerca de esto visiten mi pagina.

www.cenfortec.jimdo.com

También pueden comentar para compartir experiencias... recordemos que el estilo REST es el que va a dominar mi próximo blog hago algo con REST.

COMENTEN!!!!

Les adjunto el proyecto para que lo prueben ahi solo faltaria desplegarlo sobre un servidor de aplicaciones

Ate,
Byron Segovia
SCJP 6 - SCWCD JEE 5 - OCA 11G, OCPBCD JEE 5
Líder de Depto. De Investigación Y Desarrollo De Sistemas Informáticos
"Cuando está bien hecho, el software es invisible"
Mail Corlasosa (http://www.corlasosa.com)

AdjuntoTamaño
Dibujo1.JPG119.6 KB
Dibujo2.JPG117.32 KB
proyectoJee.png9.26 KB

Comentarios

chevere!!!
Que opinas de los servicios web REST ?

Play Ogg