BPEL: uso de manejo de fallas

Para comprender cómo utilizar el manejo de fallas, necesitamos aprender la arquitectura básica de un Service Composite en Oracle SOA Suite.

  • Service components- Procesos BPEL, Regla de Negocio, Tarea Humana, Mediador. Se utilizan para construir una aplicación compuesta SOA.

  • Binding components - Establecer conexión entre un compuesto SOA y el mundo externo.

  • Services - Proporciona un punto de entrada a la aplicación compuesta SOA.

  • Binding - Define los protocolos que se comunican con el servicio como SOAP / HTTP, adaptador JCA, etc.

  • WSDL - Define la definición de servicio de un servicio web.

  • References - Permite que una aplicación compuesta SOA envíe mensajes a servicios externos

  • Wires - Habilita la conexión entre los componentes del servicio.

Tipos de fallas

Veamos ahora los diferentes tipos de fallas.

Fallos comerciales

Ocurre cuando la aplicación ejecuta la actividad THROW o una INVOCACIÓN recibe una falla como respuesta. El nombre de la falla lo especifica el componente de servicio de proceso BPEL. El manejador de fallas que usa el nombre de falla y la variable de falla detecta esta falla.

Fallos en tiempo de ejecución

Esto es lanzado por el sistema. Estas fallas están asociadas conRunTimeFaultMessage y están incluidos en

http://schemas.oracle.com/bpel/extensionnamespace.

Maneras de manejo de fallas

En esta sección, aprenderemos sobre las diferentes formas de manejo de fallas.

Actividad de lanzamiento

Lanzar actividad arroja explícitamente la culpa. El bloque de captura detecta esta falla y las acciones correspondientes se ejecutan de ese modo.

  • Al utilizar la actividad de lanzamiento, puede lanzar fallas comerciales y, dentro del alcance creado, puede detectar esta falla y redirigir a la persona que llama (consumidor) para que tome medidas.

  • En lugar del enfoque anterior, arroja la misma falla atrapada en la actividad de captura del alcance creado. En el ámbito principal, puede detectar este error utilizando la actividad de captura.

Marco de manejo de errores (EHF)

Los 2 archivos principales utilizados en EHF son:

  • Fault-Policy.xml
  • Fault-Bindings.xml

Siempre que el proceso BPEL arroja un error, la EHF verificará si el error existe en los archivos Fault-Bindings.xml. Si es así, se llevará a cabo la acción en el archivo Fault-Policy.xml. Si no se encuentra la acción, la falla se lanzará y se manejará en el bloque de captura.

El marco de gestión de fallas (Fault-Policy.xml y Fault-Bindings.xml) se mantiene dentro de un compuesto SOA.

Los manejadores de fallas como catch y catchall están dentro de un BPEL para detectar todas las fallas, pero fault policies will only be executed when an invoke activity fails.