Axis 2 [Parte 1]

Mayo 2017



1. Concepto


El concepto de Servicio Web (Web Service) gira en torno a tres acrónimos:
  • SOAP (Simple Object Access Protocol): protocolo de intercambio entre aplicaciones ejecutadas sobre cualquier plataforma. El formato de intercambio está basado en el lenguaje XML. En otras palabras el llamado al servicio SOAP pone en marcha un flujo ASCII encerrado entre etiquetas XML y transportado en el protocolo HTTP.
  • WSDL (Web Services Description Language) da al formato XML la descripción de los Servicios Web precisando los métodos que pueden ser invocados, su firma y el punto de acceso (URL, puerto, etc..). Es por así decir el equivalente del lenguaje IDL en la programación distribuida CORBA.
  • UDDI (Universal Description, Discovery and Integration) estandariza una solución de paginas amarillas de los negocios en Internet.


Axis, realizado por Apache Software Foundation, permite la creación y el despliegue de servicios Web. Es un paquete Java libre que provee:
  • un entorno que puede funcionar como un servidor SOAP independiente o como un plug-in de motores de servlet (en particular Tomcat)
  • una API para desarrollar Servicios Web SOAP RPC o a base de mensajes SOAP
  • el soporte para diferentes capas de transporte: HTTP, FTP, SMTP, POP et IMAP, ...
  • la serialización/deserialización automatica de objetos Java en mensajes SOAP
  • herramientas para crear automáticamente WSDL correspondientes a clases Java o inversamente para crear clases Java sobre la base de un WSDL (clase proxy por así decir, que hace de enlace entre la aplicación Java cliente y el servicio remoto).
  • herramientas para desplegar, testear y monitorear servicios Web.


Axis 2.0 es una nueva versión que tiene como propósito ser más eficaz, modular y orientada a XML que la versión precedente. Un cierto número de módulos se vienen desarrollando en relación a la seguridad, las transacciones, etc.

2. Funcionamiento: runtime



La estructura del intercambio entre el Servicio Web y la aplicación cliente se puede representar del siguiente modo:

3. Axis2: WSDL2Java


Axis permite la conversión de un fichero WSDL en un conjunto de clases Java
  • Para representar el contenido de los mensajes
  • Una clase “esqueleto” a rellenar para implementar las diferentes operaciones
  • Eventualmente clases intermedias que se ocuparan de la gestión del mensaje SOAP (Stubs)

4. Axis2: Databinding framework ADB


La conversión más simple de XML en objeto: para ello existen dos modos
  • Expanded mode (modo expandido)
    • Una clase para cada elemento externo: No imbricada en un complexType
    • Una clase para cada complexType nombrado.
    • Modo sistemáticamente utilizado por el compilador en línea de comando
  • Wrapped mode (modo “integrado”)
    • Una clase conteniendo todas las clases representando los documentos XML a tratar.

5. Distribución Axis


En el sitio de Apache encontramos una distribución binaria estándar de Axis que contiene todos los jars necesarios para la ejecución y compilación de Axis así como scripts que permiten un despliegue fácil de la aplicación: http://ws.apache.org/axis2/

El artículo original fue escrito por n00r, contribuidor de CommentCaMarche

Consulta también

Publicado por Carlos-vialfa. Última actualización: 10 de septiembre de 2009 a las 20:10 por Carlos-vialfa.
El documento «Axis 2 [Parte 1]» se encuentra disponible bajo una licencia Creative Commons. Puedes copiarlo o modificarlo libremente. No olvides citar a CCM (es.ccm.net) como tu fuente de información.