El nodo de integración implementa una interfaz de servicio web nueva
En este escenario, el nodo de integración implementa una nueva interfaz de servicio web. EL WSDL para el servicio web es generado desde un conjunto de mensajes y se pone a disposición del cliente. Un flujo de mensajes basado en este WSDL y un conjunto de mensajes recibe una solicitud y, a continuación, compila un mensaje de respuesta utilizando los datos obtenidos de un aplicación no de servicio web existente.


A veces este escenario se denomina fachada de servicio web. El diseño de la interfaz de servicio web incluye normalmente la reagrupación, restricción o mejora de la interfaz existente y no está limitada por ninguna definición WSDL existente.
Usos posibles
- El nodo de integración proporciona una interfaz de servicios web a una aplicación existente, proporcionando opcionalmente otras prestaciones combinadas como por ejemplo comprobar las solicitudes realizadas.
- Con el tiempo la implementación se puede cambiar sin que ello afecte a la interfaz presentada al cliente de servicios web.
Pasos de diseño
- Cree un conjunto de mensajes para los mensajes de empresa, posiblemente importando una definición de interfaz existente, por ejemplo un archivo de cabecera C o un libro de copias COBOL.
- Genere una definición WSDL desde el conjunto de mensajes.
- Utilice un kit de herramientas SOAP como Rational® Application Developer para crear un cliente de servicios web adecuado basado en el WSDL.
- Desarrolle un flujo de mensajes para implementar el servicio web.
En el tiempo de ejecución
El flujo de mensajes recibe una solicitud de servicio web, la convierte a un formato esperado por la aplicación existente e invoca la aplicación existente. La respuesta de la aplicación existe se convierte en una respuesta de servicio web válida.
Ejemplo 1
En este ejemplo, un flujo de mensajes existente se modifica para proporcionar un servicio web. Si el flujo de mensajes existente modela sus datos en un conjunto de mensajes, se puede generar una definición WSDL desde ese conjunto de mensajes y se pone a disposición de los clientes.
La mayoría de los flujos de mensajes que utilizan actualmente WebSphere® MQ para la entrada o la salida se pueden adaptar para dar soporte a los servicios web como un protocolo adicional o de sustitución.
- Utilización de nodos SOAPInput y SOAPResponder :
- Utilización de nodos HTTPInput y HTTPResponder :
Si utiliza el dominio SOAP, la forma del árbol lógico será distinta del dominio original y será necesario tenerlo en cuenta en el flujo de mensajes. Si utiliza los nodos HTTP con el dominio original, la forma del árbol lógico no cambia. Para obtener información sobre cómo elegir el dominio, consulte IBM Integration Bus y servicios web.
Ejemplo 2
En este ejemplo, se crea un flujo de mensajes para proporcionar acceso asíncrono a una aplicación WebSphere MQ .
- La utilización de dos flujos de mensajes con nodos SOAPInput y SOAPResponder :
- La utilización de dos flujos de mensajes con nodos HTTPInput y HTTPResponder :
En cada caso, el primer flujo de mensajes recibe solicitudes de entrada desde un cliente de servicio web. El nodo Compute1 transforma la solicitud y un nodo MQOutput envía la solicitud modificada a la aplicación existente.
En el segundo flujo de mensajes, un nodo MQInput recibe la respuesta de la aplicación. El nodo Compute2 transforma el mensaje y lo propaga a un nodo de respuesta que responde al cliente de servicio web original.
El nodo Compute1 también debe guardar parte de la información de correlación que debe recuperar el nodo Compute2 , asegurándose de que las respuestas de la aplicación WebSphere MQ se devuelven al cliente que envió la solicitud original.