Web Services con Axis2 y Netbeans
Axis2 es la nueva versión del contenedor de Web Services AXIS, una de las librerias más extendidas para implantar Servicios Web soportando el protocolo SOAP.
Sin duda Axis2 se ha convertido en la solución de referencia para construir Web Services y desplegarlos en entornos de producción exigentes. Soporta los protocolos de Web Services más utilizandos como SOAP y REST.
En este tutorial os voy a explicar los pasos necesarios para publicar un sencillo servicio web utilizando Axis2 y apoyandonos en la herramienta Netbeans.
Requisitos:
Necesitaremos el siguiente software:
- Servidor web Apache Tomcat 6.x o superior, en su versión Binaria (Core –> zip).
- Motor de servicios web Apache Axis2: Necesitaremos:
- La distribución Standard Binary Distribution
- La distribución WAR (Web Archive Distribution)
- JDK de Java, en versión JDK 5.x o superior
- IDE Netbeans 6x o superior
Pasos Previos:
- Antes de comenzar con nuestro primer servicio web tendremos que tener instalado en nuestro ordenador el JDK de Java y tener establecida la variable de sistema JAVA_HOME.
En nuestro caso:
JAVA_HOME=”C:\Program Files\Java\jdk1.6.0_21″ - Deberemos tener también el servidor de aplicaciones Apache Tomcat correctamente instalado así como establecida la variable de entorno CATALINA_HOME a la ruta del mismo.
En nuestro caso:
CATALINA_HOME=C:\Program Files\Apache Software Foundation\Tomcat 6.0 - Descargar la versión binaria de Apache Axis2 y copiar la distribución War al directorio de aplicaciones de Apache Tomcat
- Descomprimiremos la versión binaria de Axis2 en la carpeta C:\librerias\axis2 y estableremos la variable AXIS2_HOME=C:\librerias\axis2 y añadiremos a la variable PATH del sistema la siguiente rura: C:\librerias\axis2\bin
- Copiaremos el fichero axis2.war a C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps
Si ahora arrancasemos el servidor de aplicaciones Apache Tomcat (CATALINA_HOME\bin\startup.bat) veriamos como se ha realizado el deploy de la aplicacion axis2.war:
Si accedemos ahora a la dirección URL http://localhost:8080/axis2 veremos que nuestra aplicación se encuentra instalada:
Creación del primer Servicio Web:
Vamos a hacer un servicio web calculadora muy sencillo al que invocaremos con 2 números y del que recibiremos una respuesta con la suma de ambos. Haremos también el programa cliente que realice la petición.
El primer paso consistirá en la creación de un proyecto en Netbeans (File –> New Project) al que pondremos de nombre “CalculadoraWS“. Elegiremos un proyecto de la categoría Java y de tipo “Java Class Library“:
Una vez creado el proyecto, deberemos crear el paquete “es.calculadora” y una clase de nombre Calculadora:
package es.calculadora; public class Calculadora { public int saludar(int sumando1, int sumando2) { return sumando1 + sumando2; } } |
Para poder indicar a Axis la existencia de dicho servicio deberemos crearar un fichero de tipo aar (Axis ARrchive, que viene a ser un equivalente a un fichero Jar de Java). Para ayudarnos en la creación y ensamblado de dicho fichero vamos a optar por la instalación de un plugin en Netbeans:
Accederemos a Tools –> Plugins –> Available Plugins donde tendremos que buscar e instalar el plugin “Axis2 Support” .
Una vez instalado tendremos que acceder a Tools –> Options para configurar donde se encuentra el fichero axis2.war y la URL de axis2:
- Ruta axis2.war: C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\axis2.war
- Ruta URL web: http://localhost:8080/axis2
En este punto ya tendremos el plugin de axis2 configurado en Netbeans. Ahora nos queda indicarle a Axis el nuevo servicio creado. Para ello crearemos un nuevo servicio axis2 a partir de la clase Calculadora.java tal y como se muestra en las siguientes imágenes:
La estructura del proyecto debería ser similar a la mostrada en la siguiente:
El siguiente paso es realizar el deploy del servicio :
Y ya tendremos listo nuestro primer servicio web a la espera de que un cliente lo invoque:
Como podemos ver, a la hora de hacer el deploy desde Netbeans se ha generado el fichero Calculadora.aar necesario para que Axis2 reconozca el nuevo servicio:
El último paso será crear un cliente que se comunique con nuestro servicio web.
1 Response
[…] En el artículo anterior explicabamos paso a paso cómo crear nuestro primer Web Service. En este artículo os enseñaré […]