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

Sitio web oficial

[editar datos en Wikidata]

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.

## Axis para Java

[editar]

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

[editar]

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

[editar]

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

[editar]

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

[editar]

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

* servicios sobre la base de RPC
* servicios sobre la base de EJB (de sesión) sin estado

#### Generación automática de WSDL

[editar]

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++

[editar]

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

[editar]

* 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

[editar]

* Portal:Software. Contenido relacionado con Software.

## Enlaces externos

[editar]

* 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

Control de autoridades|

* Proyectos Wikimedia
* Datos: Q514236
* Informática
* Free Software Directory: Apache_Axis

|

* Datos: Q514236