Apache Axis
Apache Axis es un framework de código abierto, basado en XML para servicios web. Consiste en una implementación en Java y otra en C++ del servidor SOAP, así como diversos utilitarios y APIs para generar y desplegar aplicaciones de servicios web. Por medio de Apache Axis, los desarrolladores pueden crear aplicaciones computacionales interoperables y distribuidas. Axis se desarrolla bajo los auspicios de la Apache Software Foundation.
Apache Axis | ||
---|---|---|
Información general | ||
Tipo de programa | servicios web | |
Desarrollador | Apache Software Foundation | |
Licencia | Apache License 2.0 | |
Información técnica | ||
Programado en | Java y C | |
Versiones | ||
Última versión estable | 1.4 (info) ( 22.04.2006) | |
Enlaces | ||
Axis para Java
Al emplear la variante Java de Axis, existen dos maneras de exponer código Java como servicio web. Lo más fácil es usar los archivos JWS (Java Web Service), nativos de Axis. La otra manera consiste en usar despliegues a la medida. Los despliegues a la medida permiten adaptar los recursos que se desea exponer como servicios web.
Véase también Apache Axis2.
Creación de servicios web vía JWS
Los archivos JWS contienen el código fuente de la clase Java que se desea exponer como servicio web. La principal diferencia entre un archivo Java corriente y un archivo jws consiste en su extensión. Otra diferencia es que los archivos jws se despliegan como código fuente y no como archivos .class compilados.
El siguiente ejemplo se ha tomado de la guía del usuario de Axis. Expone los métodos add y subtract de una clase "Calculator".
public class Calculator
{
public int add(int i1, int i2)
{
return i1 + i2;
}
public int subtract(int i1, int i2)
{
return i1 - i2;
}
}
Despliegue de servicios web vía JWS
Una vez desplegado el servlet de Axis, basta copiar el archivo jws al directorio de Axis en el servidor. Este mecanismo funciona, por ejemplo, en caso de emplearse un contenedor Apache Tomcat. En el caso de otros contenedores web hace falta crear un archivo WAR a la medida.
Acceso a servicios web vía JWS
Puede accederse al servicio web creado y desplegado por vía de JWS a través del URL http://localhost:8080/axis/Calculator.jws. En caso de emplearse una configuración a la medida de Apache Tomcat u otro contenedor, la URL puede ser diferente.
Servicios web desplegados a la medida
Para el despliegue a la medida de servicios web se requiere un descriptor de despliegue específico con una sintaxis denominada WSDD (Web Service Deployment Descriptor). Este descriptor puede emplearse para especificar los recursos que se desea exponer como servicios web. En su versión actual (1.3) soporta
Generación automática de WSDL
Cuando un servicio web se expone por medio de Axis, un archivo WSDL se generará automáticamente al acceder a la URL del servicio web con el apéndice ?WSDL.
Axis para C++
Un ejemplo de la implementación y el despliegue de un servicio web simple por medio de la versión C++ de Axis puede hallarse en el tutorial para Axis-CPP (ver sección de enlaces externos).
Los pasos requeridos son:
- Crear el archivo wsdl
- Generar los stubs para cliente y servidor mediante wsdl2ws
- Proveer la implementación del servicio web del lado del servidor (p.ej. el método add del servicio de calculadora)
- Compilar el código servidor y actualizar el archivo deploy.wsdd generado con la ruta del archivo .dll
- Desplegar los archivos binarios al directorio especificado en el wsdd
- Compilar el cliente
- Ejecutar y usar...
Para más información sobre los pasos individuales, véase directamente el tutorial.
Tecnologías relacionadas
- Apache Axis2 - rediseño/reimplementación de Axis
- Java Web Services Development Pack - framework para servicios web
- Apache CXF - otro framework para servicios web de Apache (ex XFire y Celtix)
- XML Interface for Network Services - framework para RPC y servicios web
- Web Services Invocation Framework - API Java para la invocación de servicios web
- webMethods Glue - producto comercial para la creación de servicios web
- AlchemySOAP - framework de código abierto en C++ para servicios web
Véase también
Portal:Software. Contenido relacionado con Software.
Enlaces externos
- Página principal de Apache AXIS en Apache Software Foundation
- Página principal de Apache AXIS C++ en Apache Software Foundation
- Tutorial Axis-C++ en Apache Software Foundation
- Apache Axis2/Java en Apache Software Foundation
- Apache Axis2/C en Apache Software Foundation
- Stylus Studio Tools para Apache AXIS, véase también Stylus Studio
- Axis Web Service Tutorial en Digizol