Hola Mundo con Java Web Services JAX WS
El objetivo del ejercicio es crear un Web Services con Jax WS y EJB de tipo Stateless session bean
Estructura Final del proyecto:
1.- Crear maven project y java application para generar el .jar
2.- pom.xml, solo agregar la dependencia de javaee
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>mx.com.gm</groupId>
<artifactId>sumaws</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>8.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
3.- Crear la interfaz con las anotaciones @WebService y @WebMethod
package beans;
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public interface ServicioSumarWS {
@WebMethod
public int sumar(int a, int b);
}
4.- Crear la implementacion de la interfaz EJB tipo stateless con el endpoint de la interfaz
package beans;
import javax.ejb.Stateless;
import javax.jws.WebService;
@Stateless
@WebService(endpointInterface = "beans.ServicioSumarWS")
public class ServicioSumarImpl implements ServicioSumarWS {
@Override
public int sumar(int a, int b) {
return a + b;
}
}
5.- Clean and build y subir el archivo jar al servidor (Glassfish)
WSDL:
http://desktop-322kafb:9090/ServicioSumarImplService/ServicioSumarImpl?wsdl
Tester:
http://desktop-322kafb:9090/ServicioSumarImplService/ServicioSumarImpl?Tester
XSD:
http://desktop-322kafb:9090/ServicioSumarImplService/ServicioSumarImpl?xsd=1
Codigo fuente
Hemos creado un Servicio Web llamado sumar, el cual recibe dos argumentos enteros, y regresa como resultado la suma de dichos argumentos. Esto es un ejemplo muy sencillo de un EJB de tipo Stateless que expone uno de sus métodos como servicio Web, pero es el mismo proceso que realizaremos para crear Servicios Web más complejos de cualquier método de un EJB que necesitemos exponer. En el siguiente ejercicio veremos cómo crear un cliente para consumir el servicio web ya publicado y expuesto en el servidor de Glassfish.
No hay comentarios.