Documentation for a newer release is available. View Latest

Puntos de Extensión de Error

Extensiones de Error de Flujo

Las extensiones de error de flujo permiten la personalización de lo que debería suceder si ocurre un error inesperado durante el procesamiento del flujo. Proporcionan un punto de enganche para manejar la excepción lanzada y brindan al desarrollador la opción de implementar una rutina de manejo.

Las extensiones de error se proporcionan implementando la interfaz 'FlowErrorExtensions' y luego suministrándola a tu dominio a través del proveedor de extensiones. Consulta la sección añadir extensiones para más detalles.

La funcionalidad disponible en la interfaz de extensiones de error es:

MethodName Description Default Functionality

shouldRaiseEventOnError

Especifica si el flujo debe elevar un evento especial 'Unexpected Error' cuando ocurre un error inesperado durante el procesamiento y luego usar ese evento para transicionar al estado especial 'In Error'. Cuando un flujo alcanza el estado 'In Error', puede moverse suministrando la funcionalidad de reanudar, abortar o forzar completar disponible en el dominio del modelo.

Apagado, no se elevan eventos.

handle

Permite la implementación de cualquier manejo de errores de flujo personalizado que desees proporcionar. Un caso de uso común para esta funcionalidad sería si estuvieras integrando tu flujo con el Human Task Manager (HTM) de IPF. Por ejemplo, si ocurre un error inesperado durante el procesamiento, puedes definir un manejador de errores personalizado para transicionar el flujo al estado de error y elevar una tarea en HTM. Desde aquí, el operador tendría la capacidad de reintentar la transacción o de abortar/forzar completar la transacción. Más detalles sobre esta implementación pueden encontrarse aquí.

Sin manejo adicional.

Las extensiones de error por defecto se proporcionan mediante la implementación 'DefaultFlowErrorHandler'.

Extensiones de Error de Evento

Las extensiones de error de evento se invocan cuando ocurre un error inesperado durante el procesamiento de un evento. El principal caso de uso para esto es capturar errores que ocurren durante la invocación de un mapeo de agregado y, particularmente, prevenir fallos durante escenarios de recuperación.

Similar a las extensiones de error de flujo, las extensiones de error de evento se proporcionan implementando la interfaz 'EventErrorExtensions' y luego suministrándola a tu dominio a través del proveedor de extensiones. El comportamiento por defecto es simplemente mover el registro al estado "In Error" y luego pasivar el flujo (esto previene que se reintente infinitamente por recuperación). Opcionalmente, puedes implementar el método 'handle' de 'EventErrorExtensions' para proporcionar funcionalidad adicional. Una opción aquí sería usar las extensiones de HTM para enviar estos registros a HTM para análisis manual.