Lección 5: Reanudación de un flujo de trabajo suspendido usando AppFabric

Objetivo: Detener y reiniciar un flujo de trabajo con error.

Finalidad: Comprender cómo Windows Server AppFabric guarda las instancias inactivas o suspendidas y cómo reanudar un flujo de trabajo suspendido.

Requisitos previos

Simular un flujo de trabajo suspendido

Para ver AppFabric en acción, debemos simular un flujo de trabajo interrumpido. En ese caso, se suspende el flujo de trabajo guardado. Para simularlo, interrumpiremos temporalmente la aplicación HRApplicationServices cambiando el nombre de la carpeta \mailbox por \mailbox2.

Para interrumpir el flujo de trabajo HRApplicationServices

  1. Vaya a la raíz del disco duro del equipo.

  2. Cambie el nombre de la carpeta de correo \mailbox por \mailbox2

  3. En Internet Explorer, escriba o pegue el URL de la aplicación:

    https://localhost/HRApplicationServices
    
  4. En el formulario de la solicitud, defina el nivel de educación en Máster.

  5. Haga clic en el botón Aplicar.

  6. En Windows Explorer, abra la carpeta mailbox2. Tenga en cuenta que no se ha generado ningún archivo de mensaje.

Ver y reanudar un flujo de trabajo suspendido

Ahora que se ha interrumpido el flujo de trabajo, AppFabric ha guardado el flujo de trabajo suspendido. Después de solucionar los problemas de la aplicación, puede reanudar el flujo de trabajo.

Para ver el flujo de trabajo suspendido

  1. Abra el Administrador de IIS o vuelva a él.

  2. En Conexiones, vaya al nodo HRApplicationServices. Haga clic en el nodo para seleccionarlo.

  3. Haga doble clic en el Panel de AppFabric.

  4. En la sección Instancias de WF persistentes hay una instancia suspendida. Tenga también en cuenta que no hay excepciones de servicio ni errores definidos por el usuario en la lista. Esto se debe a que la aplicación de ejemplo no ha generado un error detectado por el cliente. Sin embargo, dado que el flujo de trabajo estaba interrumpido, AppFabric ha guardado el flujo de trabajo suspendido.

  5. En la sección Instancias de WF persistentes, haga doble clic en la instancia suspendida SubmitApplication.xamlx. La instancia guardada aparece en la lista con el estado Suspendido

    Instancia suspendida

  6. Haga clic con el botón secundario en la instancia suspendida y haga clic en Ver eventos supervisados. (Entre otras opciones se incluyen: Reanudar, Cancelar, Finalizar y Eliminar.)

  7. En la lista de eventos supervisados, haga clic en el evento con el icono Error. La sección Detalles que aparece debajo de la lista contiene ahora los detalles del evento de error seleccionado.

    Error en el evento suspendido

  8. Haga clic en la pestaña Errores.

    Detalle del error

  9. Anote el texto de la excepción. Incluye los siguiente:

    System.Net.Mail.SmtpException: Error al enviar correo. ---> System.IO.DirectoryNotFoundException: No se ha podido encontrar una parte de la ruta de acceso 'c:\mailbox

    En este escenario, dicha información es suficiente para solucionar los problemas de la aplicación. AppFabric ha capturado el texto de la excepción para su análisis.

  10. Abra Windows Explorer y cambie el nombre de la carpeta de \mailbox2 a \mailbox.

  11. Vuelva al panel de AppFabric.

  12. Haga clic con el botón secundario en el panel y haga clic en Panel de AppFabric.

  13. En la sección Instancias de WF persistentes, haga doble clic en la instancia suspendida SubmitApplication.xamlx.

  14. Haga clic con el botón secundario en la instancia suspendida y, a continuación, haga clic en Reanudar.

  15. Tras unos segundos, vuelva a hacer clic con el botón secundario en la instancia y haga clic en Actualizar.

  16. En Windows Explorer, abra la carpeta mailbox. Observe que ahora hay un archivo de mensaje en la carpeta.

  17. Haga doble clic en el elemento para abrirlo y haga clic en Revisar la aplicación. (Si no tiene un programa lector de correo, vea el mensaje con Notepad.exe y copie y peque el URL del mensaje en la aplicación de su navegador para ver el mensaje HTML. El URL se parece al siguiente: https://localhost/HRApplicationServices/HireApproval.aspx?AppID=23 Tenga en cuenta que AppID se ha definido como el Id. del candidato.)

  18. En la página HTML, haga clic en Contratar para contratar al candidato. Abra la carpeta mailbox y observe que hay un archivo de mensaje final. Ábralo para ver las buenas noticias.

  19. Vuelva al panel de AppFabric.

  20. Haga clic con el botón secundario en el panel y haga clic en Actualizar. Se actualizará el panel y la instancia inactiva desaparecerá de la columna Instancias activas o inactivas.

¿Qué acabo de hacer?

Ha simulado una interrupción que ha provocado que se suspendiese el flujo de trabajo. Después de solucionar el error, ha reanudado el flujo de trabajo usando el panel.

Vea también

Conceptos

Lección 1: Introducción
Lección 2: Implementación del servicio de flujo de trabajo HRApplicationServices
Lección 3: Configuración de la aplicación HRApplicationServices
Lección 4: Seguimiento del estado de la aplicación HRApplicationServices

  2011-12-05