Ampliación del ejemplo de agregación de servicios web

Puede ampliar el ejemplo como se indica a continuación.

El ejemplo llama a un único servicio web de destino, implementado en el ejemplo como flujo de mensajes WSAggregationTargetWS.

Direccionar dinámicamente a un servicio web de destino

Puede sustituir dinámicamente algunos valores WSDL en un nodo SOAPAsyncRequest utilizando el entorno local. Para obtener información sobre los valores que puede modificar, y cómo modificarlos, consulte Sustituciones en el entorno local para el nodo SOAPRequest en la documentación de WebSphere Message Broker.

No es posible sustituir dinámicamente el archivo WSDL utilizado por el nodo SOAPAsyncRequest.

En este ejemplo, el flujo de mensajes WSAggregationMQtoSOAP.msgflow contiene nodos SOAPAsyncRequest. Para sustituir sus valores, establezca valores de entorno local apropiados en ESQL para los nodos Compute de este flujo de mensajes.

Si rectifica el nombre del servicio web de destino, es muy probable que los mensajes de solicitud y respuesta sean distintos de los que se proporcionan en este ejemplo. Verifique cada flujo de mensajes para determinar si los mensajes que se leen o escriben coinciden con el nuevo servicio web de destino.

Utilizar un servicio web de destino alternativo

Para llamar a un único servicio web de destino distinto, siga estos pasos:

  1. Añada el archivo WSDL para el servicio web alternativo en un proyecto de conjunto de mensajes.
  2. Cree un archivo WSDL desplegable para el servicio web alternativo.
  3. En el flujo de mensajes WSAggregationFanOut.msgflow, rectifique el ESQL en el nodo Compute para generar un mensaje adecuado para enviarlo al servicio web alternativo.
  4. Cambie el flujo de mensajes WSAggregationMQtoSOAP.msgflow siguiendo estos pasos:
    1. Rectifique los nodos SOAPAsyncRequest para utilizar el archivo WSDL para el servicio web alternativo.
    2. Establezca un URL de servicio web apropiado en los nodos SOAPAsyncRequest.
  5. Implemente el servicio web de destino.
  6. Cambie el flujo de mensajes WSAggregationSOAPtoMQ.msgflow para procesar la respuesta del servicio web alternativo.
  7. Cambie el flujo de mensajes WSAggregationFanIn.msgflow para amalgamar los resultados de las respuestas del servicio web alternativo.

Si el servicio web de destino se encuentra en el archivo WSDL del nodo SOAPAsyncRequest, puede sustituir los valores dinámicamente como se ha descrito más arriba.

Utilizar dos servicios web de destino distintos

Para llamar a dos servicios web de destino distintos, siga estos pasos:

  1. Añada los archivos WSDL para los dos servicios web a un proyecto de conjunto de mensajes.
  2. Cree archivos WSDL desplegables para los dos servicios web.
  3. En el flujo de mensajes WSAggregationFanOut.msgflow, rectifique el ESQL en el nodo Compute para generar mensajes adecuados para enviarlos a los dos servicios web.
  4. Cambie el flujo de mensajes WSAggregationMQtoSOAP.msgflow siguiendo estos pasos:
    1. Rectifique los nodos SOAPAsyncRequest para utilizar el archivo WSDL para el primer servicio web.
    2. Rectifique los otros nodos SOAPAsyncRequest para utilizar el archivo WSDL para el segundo servicio web.
    3. Establezca los URL de servicio web apropiados en cada nodo SOAPAsyncRequest.
  5. Implemente los servicios web de destino.
  6. Cambie el flujo de mensajes WSAggregationSOAPtoMQ.msgflow para procesar las dos respuestas de servicio web.
  7. Cambie el flujo de mensajes WSAggregationFanIn.msgflow para amalgamar los resultados de las respuestas de los dos servicios web.

Si los servicios web de destino se encuentran en archivos WSDL del nodo SOAPAsyncRequest, puede sustituir dinámicamente los valores como se ha descrito más arriba.

Utilizar más de dos servicios web de destino distintos

Puede llamar a más de dos servicios web de destino distintos de varias formas, como en el siguiente ejemplo.

  1. Añada nodos adicionales para direccionarlos a servicios web de destino adicionales.
    1. Añada los archivos WSDL para todos los servicios web a un proyecto de conjunto de mensajes.
    2. Cree archivos WSDL desplegables para todos los servicios web.
    3. En el flujo de mensajes WSAggregationFanOut.msgflow, añada y configure nodos MQOutput y AggregateRequest adicionales.
    4. En el flujo de mensajes WSAggregationMQtoSOAP.msgflow, añada y configure nodos MQInput, Compute y SOAPAsyncRequest adicionales.
    5. Implemente los servicios web de destino.
    6. Cambie el flujo de mensajes WSAggregationSOAPtoMQ.msgflow para procesar las respuestas de todos los servicios web.
    7. Cambie el flujo de mensajes WSAggregationFanIn.msgflow para amalgamar los resultados de todas las respuestas de servicios web.
  2. Direccione dinámicamente los servicios web de destino adicionales.
    1. Añada los archivos WSDL para todos los servicios web a un proyecto de conjunto de mensajes.
    2. Cree archivos WSDL desplegables para todos los servicios web.
    3. En el flujo de mensajes WSAggregationMQtoSOAP.msgflow, configure nodos SOAPAsyncRequest para cada archivo WSDL.
    4. En el flujo de mensajes WSAggregationMQtoSOAP.msgflow, rectifique el ESQL del nodo Compute para establecer los parámetro de servicio web dinámicamente utilizando valores del entorno local.
    5. Implemente los servicios web de destino.
    6. Cambie el flujo de mensajes WSAggregationSOAPtoMQ.msgflow para procesar las respuestas de todos los servicios web.
    7. Cambie el flujo de mensajes WSAggregationFanIn.msgflow para amalgamar los resultados de todas las respuestas de servicios web.

Volver a Acerca del ejemplo de agregación de servicios web

Volver a la página inicial del ejemplo