Antes de comenzar
En este tutorial aprenderá sobre la Interoperabilidad de los servicios web, o WS-Interoperability. Este tutorial está destinado a programadores que arman servicios web y desean asegurar que sus servicios estén diseñados para funcionar bien para la mayor cantidad de usuarios potenciales. Comprender los verdaderos problemas del mundo de la interoperabilidad que afectan a los servicios web y las mejores prácticas que se pueden aplicar para evitarlos puede marcar la diferencia entre un servicio web que es fácil de manejar para los usuarios y uno que está lleno de problemas.
A fin de comprender este tutorial, debe tener una comprensión básica del Protocolo simple de acceso a objetos (SOAP) y las tecnologías relacionadas, como por ejemplo WSDL. Los ejemplos de este tutorial utilizan Java™ y el kit de herramientas SOAP Apache Axis2 SOAP. Lea los primeros cinco tutoriales de esta serie, especialmente la Parte1 y la Parte 2, para obtener una mejor compresión.
Esta serie tutorial enseña los conceptos básicos de los servicios web siguiendo las hazañas del periódico ficticio, Daily Moon, personal utiliza servicios web para crear un sistema de flujo de trabajo para incrementar la productividad en este entorno competitivo.
La Parte 1 empieza simplemente, explicando los conceptos básicos de los servicios web y mostrándole cómo utilizar SOAP, la especificación que subyace en la mayoría de lo que vendrá, y conecta el departamento de clasificados con el Sistema de Gestión de Contenido.
La Parte 2 lleva las cosas un poco más allá, al explicar cómo usar Web Services Description Language (WSDL) para definir los mensajes producidos como se espera por el servicio web, lo que le permite al equipo crear servicios y a los clientes que se conectan a ellos con más facilidad.
La Parte 3 encuentra al equipo con una cantidad de servicios implementados y un deseo de ubicarlos con facilidad. En respuesta, Universal Description, Discovery and Integration (UDDI) provee un registro que permite realizar búsquedas de servicios disponibles a una manera de publicitar sus propios servicios a otros.
En la Parte 4, Rudy, editor deDaily Moon, decide que el periódico necesita implementar mejores procedimientos de seguridad para servicios web que acceden a sus sistemas internos.
La Parte 5 muestra los cambios que deben hacer los equipos para acceder a esos servicios recientemente protegidos.
Esta Parte 6 de la serie trata del armado de la verificación de los servicios web interoperables. Los miembros del personal del periódico ya conocen la importancia que tiene el llegar al mayor público posible, así que deciden analizar sus servicios web para asegurarse de que a cualquiera que quiera utilizarlos le resulte fácil hacerlo.
Finalmente, la Parte 7 muestra cómo utilizar Lenguaje de ejecución de procesos de negocios para servicios web (WS-BPEL) para crear aplicaciones complejas desde servicios individuales.
En la Parte 6 de esta serie tutorial de servicios web, el personal de Daily Moon trabaja para asegurar que sus servicios web sean lo más interoperativos posible. Los miembros del personal están seguros de que los servicios cumplen los requisitos comerciales con los que empezaron, pero no están seguros de que los servicios funcionarán para todos los que deseen utilizarlos. Anteriormente los problemas de interoperabilidad eran comunes en los servicios web debido al gran alcance de las especificaciones SOAP y WSDL originales, y debido a que la interpretación de las especificaciones quedaba al albedrío de los desarrolladores, lo que condujo a implementaciones incompatibles. Estos problemas se han resuelto a través de la experiencia y la adopción de un conjunto de mejores prácticas como se especifica en el Perfil Básico WS-I.
Para Daily Moon (y la mayoría de las organizaciones), la presión yace en garantizar la mayor circulación posible de los servicios web de la organización, así que las organizaciones investigan el tema para asegurarse de que sus servicios web no tengan problemas de interoperabilidad.
Este tutorial le enseña sobre los problemas de interoperabilidad del servicio web con un enfoque práctico. Las partes anteriores de esta serie le mostraron cómo incorporar un servicio web a su propio software y cómo armar sus propios servicios. La sexta entrega se apoya en las anteriores y se concentra en lo que usted puede hacer para asegurarse de que los servicios web que produce son fáciles y libres de problemas para los programadores que los utilizarán.
El código utilizado en este tutorial no es específico para ningún lenguaje o entorno de programación. Los ejemplos brindados son los mismos utilizados durante toda esta serie tutorial. Para seguir los ejemplos debe tener el siguiente software instalado:
Java 2 Standard Edition versión 1.4.2 o superior - Todas estas herramientas están basadas en Java, al igual que los servicios y clientes que armará en este tutorial.
Apache Axis2 versión 1.0 Axis2 es un kit de herramientas SOAP de funciones completas que brindan implementaciones de varias API de servicio web que incluyen SOAP y WSDL. Un kit de herramientas como Axis2 es invaluable cuando se trata del desarrollo de servicios web. Existen kits de herramientas de alcance similar para otros lenguajes y entornos de programación. El proyecto Axis en Apache tiene una larga historia y se originó con un esfuerzo de IBM llamado SOAP4J.
Apache Geronimo u otro servidor de aplicación – Esta serie tutorial utiliza el servidor Apache Geronimo J2EE (que es la base del servidor IBM WebSphere® Community Edition). Puede utilizar otros servidores de aplicación, pero Geronimo es simple, liviano y gratuito, así que es una buena elección para instalar y ejecutar rápidamente.