フォルト・ポリシー・バインディングによる解決方法の理解
フォルト・ポリシー・バインディング・ファイルは、フォルト・ポリシー・ファイルに定義されているポリシーをSOAコンポジット・アプリケーションまたはコンポーネント(サービス・コンポーネントまたは参照バインディング・コンポーネント)に関連付けます。フォルト管理フレームワークでは、次の順序でフォルト・ポリシー・バインディングの識別が試みられます。
-
composite.xmlファイルに定義されている参照バインディング・コンポーネント。 -
composite.xmlファイルに定義されているBPELプロセスまたはOracle Mediatorのサービス・コンポーネント。 -
composite.xmlファイルに定義されているSOAコンポジット・アプリケーション。
解決する過程で条件に適したアクションが見つからない場合、フォルト管理フレームワークでは、その解決は失敗とみなされ、次の解決レベルに移動します。
たとえば、invokeアクティビティがfaultname="abc"で失敗となった場合を考えてみます。fault-bindings.xmlファイルには、次のポリシー・バインディングが指定されているとします。
-
policy-id-1へのSOAコンポジット・アプリケーションのバインド -
policy-id-2へのBPELプロセス/Oracle Mediatorサービス・コンポジットまたは参照バインディング・コンポーネントのバインド
また、fault-bindings.xmlファイルには、次のバインディングも指定されているとします。
-
policy-id-3へのSOAコンポジット・アプリケーションのバインド -
policy-id-4への参照バインディング・コンポーネントまたはサービス・コンポーネントのバインド
フォルト管理フレームワークは、次のように動作します。
-
最初に、解決バインディング(この場合は
policy-id-4)と照合します。 -
フォルトの解決に失敗した場合は、可能な次の照合(
policy-id-2との照合)に進みます。 -
フォルトの解決に失敗した場合は、可能な次の照合(
policy-id-3との照合)に進みます。 -
フォルトの解決に失敗した場合は、可能な次の照合(この場合は
policy-id-1との照合)に進みます。 -
フォルトが解決していない場合、そのフォルトはBPELフォルトcatchアクティビティに送信されます。