La zona de sobre servicios web en WebSphere® contiene artículos, tutoriales, ejemplos de código, roadmaps y varios otros recursos para ayudarle a desarrollar, probar, desplegar y usar servicios web. Esta página le proporciona una visión general de cómo WebSphere soporta los servicios web.

¿Cuáles son los servicios web en WebSphere?

SVarios productos WebSphere proporcionan la funcionalidad de servicios web. El principal de ellos es WebSphere Application Server (llamado de "Application Server" de ahora en adelante) y el componente Web Services Gateway de WebSphere Application Server Network Deployment. Lo que sigue son algunos de los otros: CICS® Transaction Server V3.1 for z/OS®, que puede proporcionar y consumir servicios web compatibles con WS-I, WebSphere Message Broker, que proporciona soporte para mensajes SOAP, y WebSphere Business Integration Server, que proporciona conectividad de servicios web a través de uno de sus varios adaptadores. Este artículo enfoca específicamente la funcionalidad de servicios web proporcionada por WebSphere Application Server.

Las aplicaciones desplegadas en Application Server pueden usar su soporte incorporado de servicios web para exponer los servicios a consumidores remotos en una forma que es el estándar de la industria. Esas aplicaciones también pueden descubrir e invocar servicios prestados por otras aplicaciones implementadas en tecnologías diferentes.

¿Cuáles son los requisitos para usar servicios web con WebSphere?

Los requisitos básicos para ejecutar servicios web en WebSphere son equivalentes a los de cualquier otra aplicación. Sin embargo, las tecnologías de servicios web están avanzando rápidamente y han cambiado considerablemente en los últimos cuatro años en los cuales WebSphere viene prestándolos. Además, ya que los servicios web son una tecnología distribuida, imponen requisitos tanto al consumidor como al prestador. La organización Web Services Interoperability (WS-I) ha definido algunas combinaciones de protocolos en perfiles para ayudar a los consumidores y prestadores de servicios web a determinar la compatibilidad. Versiones diferentes de WebSphere tienen niveles diferentes de soporte a servicios web cuando actúan como consumidor o prestador. En forma amplia, se puede clasificar el soporte en tres grupos: anterior a WebSphere 5.0.2, de WebSphere 5.0.2 a WebSphere 5.1 y WebSphere 6.

Anterior a WebSphere 5.0.2

  • Visión general: Esa versión de servicios web fue introducida en Application Server V4 y proporcionada en Application Server V5. Aunque WebSphere venía con lo que hoy es la implementación Apache SOAP, si está implementando servicios web con esas versiones de WebSphere, debe considerar la hipótesis de usar la implementación Apache Axis.
  • Pila de servicios web: Apache SOAP
  • Interoperabilidad: Ya que esa versión de la pila de servicios web en WebSphere no es compatible con ningún perfil de WS-I, se debe limitar el uso de esa pila de servicios web a la comunicación con otras implementaciones anteriores a WebSphere V5.0.2, o sólo después de una prueba completa con una implementación diferente. Es posible que haya una interoperabilidad limitada con pilas de otros proveedores.
  • Herramientas: Para construir prestadores y consumidores de servicios web para esta versión de WebSphere, es conveniente usar WebSphere Studio Application Developer V5 o posterior.

WebSphere 5.0.2 a WebSphere 5.1

  • Visión general: Esas versiones de WebSphere se beneficiaron con la segunda generación de pilas de servicios web de IBM.
  • Pila de servicios web: Pila IBM JAX-RPC 1.0
  • Interoperabilidad: Ya que esa versión de la pila de servicios web es compatible con el perfil básico V1 de WS-I, es posible que haya una interoperabilidad básica con implementaciones de servicios web de otros proveedores. Es posible que haya una interoperabilidad limitada de la seguridad de servicios web.
  • Herramientas: Para construir consumidores y prestadores de servicios web para esa versión de WebSphere, use WebSphere Studio Application Developer V5.12 o posterior.

WebSphere 6

  • Visión general: El soporte a servicios web en WebSphere V6 es la tercera generación de la pila de servicios web de IBM, que soporta varios de los estándares más recientes que rigen esa área.
  • Pila de servicios web: Pila IBM JAX-RPC 1.1
  • Interoperabilidad: Ya que esa versión de la pila de servicios web en WebSphere es compatible con el perfil básico de WS-I versión 1.1, WS-Security con soporte de señal de UsernameToken y X509, WS-AtomicTransaction and WS-Addressing, es posible que haya una interoperabilidad razonable con las implementaciones de servicios web de otros proveedores. La interoperabilidad de la seguridad de servicios web es posible.
  • Herramientas: Para crear consumidores y prestadores de servicios web para esa versión de WebSphere, use Rational® Application Developer Versión 6 o posterior.

¿Cómo puedo crear aplicaciones proveedoras y consumidoras de servicios web para desplegar en WebSphere?

Puede crear aplicaciones clientes de servicios web para desplegar en WebSphere a través de las herramientas de línea de comandos que vienen con el propio WebSphere (WSDL2Java) o de otras herramientas que prefiera, pero la forma más productiva de crear un código de aplicación para desplegar en WebSphere es usar la oferta adecuada de Rational Software Development Platform. Los productos para desarrollo de software de Rational se basan en Eclipse 3.0 y proporcionan un entorno completo de desarrollo de aplicaciones para crear y mantener sistemas de aplicaciones empresariales compatibles con J2EE. Ese entorno de desarrollo incluye varios dispositivos que no están disponibles en Eclipse.

Lo que sigue son algunas de las funciones ofrecidas:

Crear un prestador de servicios

Use las herramientas de Rational Application Developer para crear, desplegar, probar y publicar servicios web desde abajo hacia arriba a partir de Java beans, beans empresariales, archivos DADX y URLs ya existentes y de arriba hacia abajo a partir de WSDL. Los asistentes soportan la generación automática de artefactos adicionales, como una proxy de JavaBean para acceder fácilmente al servicio web y un cliente de prueba.

Las herramientas Rational también incluyen un editor de WSDL para facilitar el desarrollo de servicios web con las buenas prácticas de definición de los tipos y de la interfaz primeramente en WSDL y generación de los artefactos Java a partir de WSDL.

Crear un consumidor de servicios

Use el asistente de cliente de servicios web o herramientas de línea de comandos para crear un cliente para cualquier servicio Web. Para crear un cliente de servicios web, sólo se necesita el archivo WSDL.

Proteger el cliente

Los asistentes de servicios web y los editores de descriptores de despliegue ayudan a configurar la seguridad de los servicios web (WS-Security) para el entorno de WebSphere Application Server.

Ejecutar servicios web

Ejecute los componentes de prestador y consumidor de servicios web en varias versiones de WebSphere Application Server, Tomcat y otros entornos de prueba. El despliegue y la administración del entorno de prueba de WebSphere están integrados al Application Developer.

Probar servicios web

Probar servicios web que ejecutan local o remotamente. Para realizar pruebas locales, puede usar el entorno de prueba de WebSphere. El entorno de prueba de WebSphere contiene un entorno completo de tiempo de ejecución de WebSphere Application Server. Rational Application Developer proporciona diferentes funciones para probar servicios web.

Descubrir servicios web

Examine los registros de descripción, descubierta e integración universal (UDDI) o sitios en el lenguaje de inspección de servicios web (WSIL) para encontrar servicios web para integrar. Web Services Explorer proporciona las funciones necesarias para descubrir servicios web.

Publicar servicios web

Publique servicios web en un registro empresarial UDDI V2 o V3 a través de Web Services Explorer.

Construya esquemas

Genere esquemas de JavaBean y EJB a partir de archivos WSDL. Eso puede ser conveniente durante la fase de desarrollo y prueba de un proyecto. Por ejemplo: cuando el servicio web está definido (WSDL) pero no está ejecutando en el sitio del prestador de servicios y se necesita probar el cliente, puede crear un prestador de servicios de prueba para emular el prestador.

Validar servicios web

Use los validadores de WSDL y DADX para detectar problemas estructurales y semánticos en esos tipos de archivos. Ese dispositivo es útil para cerciorarse de que el archivo WSDL de un servicio, proveniente de un prestador de servicios, es válido.

Comprobar la conformidad

Se pueden definir varios niveles y pruebas de compatibilidad con el perfil de WS-I para el entorno de desarrollo de servicios web. Rational Application Developer puede comprobar la compatibilidad con Simple SOAP Basic 1.0 y con Attachment Profile 1.0.

Cuando se crean o cambian servicios web, el probador de compatibilidad con WS-I analiza el servicio y, dependiendo de la configuración, pasa por alto, recomienda o exige la compatibilidad con el perfil. Puede definir eso en las preferencias de servicios web.

Trabajar con archivos WSDL

Rational Application Developer proporciona asistentes y funciones para ayudar a trabajar con archivos WSDL:

  • Use el editor gráfico para crear un archivo WSDL desde una plantilla y agregar elementos WSDL (servicio, puerto, tipos de puerto, mensajes).
  • Cree documentación WSDL; con eso, se crea documentación HTML para el archivo WSDL, semejante a un documento JavaDoc.
  • Validar el archivo WSDL respecto a la compatibilidad con WS-I.

Navegar en servicios web

Ahora Rational Application Developer organiza servicios web en conjunto en un grupo de servicios web en Project Explorer, lo que facilita la búsqueda y el trabajo con servicios web.

La tabla a continuación muestra las tecnologías y especificaciones relacionadas con servicios web soportadas en Rational Application Developer V6.

Tecnología o especificaciónVersión o nivel soportado
HTTP/HTTPS1.0 and 1.1
JMS1.1
SOAP1.1
SOAP Attachments1.0
UDDI2.0 and 3.0
WSDL1.1
WSIL1.0
WS-SecurityOASIS Standard 1.0
WS-I Basic Profile1.1.2
WS-I Simple SOAP Binding Profile1.0.3
WS-I Attachments Profile1.0
JAX-RPC1.0 for J2EE 1.3
1.1 for J2EE 1.4
Servicios web para J2EEWSEE 1.0 (JSR 109) for J2EE 1.3
WSEE 1.1 (JSR 921) for J2EE 1.4

Rational Application Developer soporta tres entornos de tiempo de ejecución de prestador de servicios web:

  • Entorno de tiempo de ejecución de WebSphere

    Ese es el entorno de tiempo de ejecución recomendado para uso en la producción. Sólo el entorno de tiempo de ejecución de WebSphere tiene el soporte total de IBM. Contiene serializadores y deserializadores especiales para objetos completos, soporte a JSR 109 para servicios web empresariales (EJBs) y soporte a SOAP en JMS.

  • Entorno de tiempo de ejecución SOAP de IBM

    Ese era el único entorno de tiempo de ejecución soportado en las versiones anteriores de WebSphere Studio Application Developer (V5 y anteriores). Debe ser usado sólo para fines de compatibilidad con las versiones anteriores. Soporta Apache SOAP 2.3. Actualmente, los servicios web de DB2 a partir de sentencias SQL (archivos DADX) aún requieren el tiempo de ejecución de SOAP.

  • Entorno de tiempo de ejecución de Apache Axis 1.0

    Esa es la tercera versión de la implementación Apache SOAP. Apache Axis evolucionó desde la implementación Apache SOAP (que comenzó como IBM SOAP4J). El tiempo de ejecución de Apache Axis no es recomendado para los entornos de producción de WebSphere, pero se puede usar en servidores Apache Tomcat.

¿Dónde puedo obtener más información acerca de los servicios web de WebSphere?

La zona de developerWorks sobre servicios web de WebSphereproporciona centenares de recursos a los desarrolladores para ayudar en la iniciación a los servicios web de WebSphere.

Para obtener informaciones sobre la familia de productos WebSphere que soporta servicios web, consulte http://www.ibm.com/software/websphere/.

Para obtener informaciones sobre productos IBM Rational, consultehttp://www.ibm.com/software/rational/.

Para obtener informaciones acerca de la organización Web Services Interoperability, consulte la página de Web Services Interoperability page.

For information about the Web Services Interoperability organization, refer to the Web Services Interoperability.

Conéctese con IBM developerWorks