Ejecutar el ejemplo de Libreta de direcciones utilizando WS-ReliableMessaging
Las solicitudes o respuestas SOAP podrían no entregarse a un servicio web o cliente
debido a una interrupción de la red o una anomalía del servidor. Web Services Reliable
Messaging (WS-RM) es una especificación que permite que dos sistemas basados en SOAP se
envíen mensajes entre sí de forma fiable.
El protocolo WS-RM define cómo enviar de nuevo los mensajes que determina que no se han
entregado satisfactoriamente, e impide la entrega de mensajes duplicados a la aplicación de destino.
Vamos a demostrar cómo se puede utilizar WS-RM para entregar mensajes SOAP/HTTP de
forma fiable, deteniendo e iniciando un canal TCP/IP para simular una interrupción en la
red. Incluso con esta interrupción en la red, todas las solicitudes y respuestas
SOAP/HTTP se entregan satisfactoriamente.
- Configure el Supervisor TCP/IP como se describe en
Configurar un supervisor TCP/IP para simular una
interrupción en la red.
- Siga las instrucciones en Configurar los ejemplos Libreta de
direcciones para utilizar HTTP.
- Las instrucciones siguientes demuestran que si se produce cualquier interrupción en la
red, se generará una excepción cuando los flujos de consumidor y proveedor no estén
configurados para utilizar WS-RM:
- En la vista Desarrollo de intermediario, expanda el proyecto AddressBook.
- Expanda Pruebas de flujo. Efectúe una doble pulsación en
AddressBookTests.mbtest para abrir el archivo en el Cliente de prueba.
- Seleccione la primera opción de Colocar en cola. Pulse Enviar mensaje.
- El Supervisor TCP/IP muestra el mensaje SOAP que se ha transmitido entre el flujo
de proveedor y el flujo de consumidor.
Compruebe el contenido de los mensajes SOAP de entrada y salida. Si desea que el
mensaje sea más fácil de leer, utilice el menú del Supervisor TCP/IP para cambiar el
formato de Byte a XML.
- Seleccione la primera opción de Extraer de cola. Pulse Obtener mensaje.
Podrá ver la respuesta HTTP del nodo SOAPRequest y el mensaje XML.
- Detenga el Supervisor TCP/IP. Pulse el botón derecho del ratón en la vista de Supervisor TCP/IP y seleccione Propiedades.
Seleccione el Supervisor TCP/IP que ha creado y pulse Detener.
- Abra AddressBookTests.mbtest. Seleccione la primera opción de Colocar en cola.
Pulse Enviar mensaje.
- Reinicie el Supervisor TCP/IP. Pulse el botón derecho del ratón en la vista de Supervisor TCP/IP y seleccione Propiedades.
Seleccione el Supervisor TCP/IP que ha detenido y pulse Iniciar.
- La solicitud ha fallado. Seleccione el tercer Extraer de la cola
y pulse Obtener mensaje para ver el mensaje de error. Consulte el registro de sucesos para obtener más información.
- Las instrucciones siguientes demuestran que si se produce cualquier interrupción en
la red, los mensajes SOAP/HTTP se siguen entregando cuando los flujos de consumidor y
proveedor están configurados para utilizar WS-RM:
- Amplíe el ejemplo para que los flujos estén configurados para utilizar WS-RM. Debe asociar los flujos
con el conjunto de políticas predeterminado. Realice los pasos descritos en
Configurar y desplegar los archivos BAR.
- Después de desplegar los flujos, los mensajes se enviarán al flujo de consumidor.
- En la vista Desarrollo de intermediario, expanda el proyecto AddressBook.
- Expanda Pruebas de flujo. Efectúe una doble pulsación en AddressBookTests.mbtest para abrir el archivo en el Cliente de prueba.
- Seleccione la primera opción de Colocar en cola. Pulse Enviar mensaje.
- Compruebe el Supervisor TCP/IP. Verá los mensajes de protocolo de conexión WS-RM que se envían entre los flujos de consumidor y proveedor.
Compruebe el contenido de los mensajes SOAP de entrada y salida. Si desea que el
mensaje sea más fácil de leer, utilice el menú del Supervisor TCP/IP para cambiar el
formato de Byte a XML.
- Seleccione la primera opción de Extraer de cola. Pulse Obtener mensaje.
Podrá ver la respuesta HTTP del nodo SOAPRequest y el mensaje XML.
- Detenga el Supervisor TCP/IP. Pulse el botón derecho del ratón en la vista de Supervisor TCP/IP y seleccione Propiedades.
Seleccione el Supervisor TCP/IP que ha creado y pulse Detener.
- Abra AddressBookTests.mbtest. Seleccione la primera opción de Colocar en cola.
Pulse Enviar mensaje.
- Ahora inicie de nuevo el Supervisor TCP/IP. Pulse el botón derecho del ratón en la vista de Supervisor TCP/IP y seleccione Propiedades.
Seleccione el Supervisor TCP/IP que ha detenido y pulse Iniciar.
- La solicitud se ha procesado. Compruebe el Supervisor TCP/IP. Verá los mensajes de
protocolo de conexión WS-RM que se envían entre los flujos de consumidor y proveedor.
- Seleccione el segundo Extraer de la cola y pulse
Obtener mensaje para ver el mensaje.
- Ha ampliado el ejemplo de Libreta de direcciones para utilizar WS-ReliableMessaging.
Volver a Ampliar el ejemplo de Libreta de direcciones
Volver a la página inicial del ejemplo