フォルト・ポリシー

フォルト・ポリシーは、エラー状態および対応するアクションを定義したものです。フォルト・ポリシーは、「fault-policies.xmlのスキーマ定義ファイル」に示すXMLスキーマに基づいて作成したfault-policies.xmlファイルで定義します。

順次ルーティング・ルールのフォルト・ポリシーは、次に示すようにパラレルのルーティング・ルールの場合とは異なる方法で処理されます。

  • 順次ルーティング・ルールがシングル・スレッド処理であるため、エラー処理に対して3つのアクション(中断、再スロー、およびJava)のみがサポートされており、指定されたアクションがコール元のスレッドでただちに実行されます。

  • メディエータ・メッセージは、順次ルーティングで保持されません。

  • 非同期および一方向メディエータ・コンポーネントは、BPELビジネス・プロセスなど他のSOA Suiteコンポーネントからスローされるシステム・フォルトを処理できません。

使用可能なエラー処理アクションの詳細は、「アクション」を参照してください。

ノート:

次の場合は、フォルト・ポリシーはサポートされません。

  • コールバックの実行失敗

  • フォルト・ハンドラ・アクションの失敗

  • 再シーケンサの失敗

フォルト・ポリシー・ファイルのサンプルを次に示します。

<?xml version="1.0" encoding="UTF-8"?>
<faultPolicies>
  <faultPolicy version="2.0.1" id="CRM_ServiceFaults">
    <Conditions>
      <faultName xmlns:medns="http://schemas.oracle.com/mediator/faults"
 name="medns:mediatorFault">
        <condition>
         <test>contains($fault.mediatorErrorCode, "TYPE_FATAL_MESH")</test>
          <action ref="ora-retry"/>
        </condition>
      </faultName>
     </Conditions>
    <Actions>
        <Action id="ora-retry">
          <retry>
            <retryCount>3</retryCount>
            <retryInterval>2</retryInterval>
            <exponentialBackoff/>
            <retryFailureAction ref="ora-java"/>
            <retrySuccessAction ref="ora-terminate"/>
          </retry>
        </Action>
    </Actions>
  </faultPolicy>
</faultPolicies>

次の各項では、フォルト・ポリシーの2つのコンポーネント(条件とアクション)について説明します。