プロセス・インスタンスの終了

このタスクを実行する理由とタイミング

プロセス管理者権限を持つユーザーが、 リカバリー不能状態として認識されているトップレベルのプロセス・ インスタンスを終了する必要がある場合があります。例えば、アプリケーションが起動されて障害が発生したときに、休止状態に戻らない場合などです。

プロセス・インスタンスは、未解決のサブプロセスやアクティビティーがあってもこれらを待たずに即時に終了するため、プロセス・インスタンスの終了は例外的な場合にのみ行ってください。

このタスクのステップ

  1. 終了するプロセス・インスタンスを検索 します。
    ProcessInstanceData processInstance =
           process.getProcessInstance("CustomerOrder");
  2. プロセス・インスタンスを終了します。

    プロセス・インスタンスを終了する場合、補正を使用してプロセス・インスタンスを終了することも、補正を使用せずに終了することもできます。

    補正を使用してプロセス・インスタンスを 終了するには、以下のようにします。
    PIID piid = processInstance.getID();
    process.forceTerminate(piid, CompensationBehaviour.INVOKE_COMPENSATION);
    補正を使用しないでプロセス・インスタンスを 終了するには、以下のようにします。
    PIID piid = processInstance.getID();
    process.forceTerminate(piid);

    プロセス・インスタンスを補正を使用して終了する場合、プロセス・テンプレートに定義された補正ハンドラーが呼び出されます。プロセス・テンプレートに補正ハンドラーが定義されていない場合は、デフォルトの補正ハンドラーが呼び出されます。 補正を使用せずにプロセス・インスタンスを終了する場合、 プロセス・インスタンスはアクティビティーが正常に終了するのを待たずに、即時に終了されます。

    プロセスによって開始されるアプリケーションは、強制終了要求の影響を受けません。 そのようなアプリケーションを終了させる場合は、 プロセスによって開始されるアプリケーションを明示的に終了するステートメントを プロセス・アプリケーションに追加する必要があります。


Terms of use |

Last updated: Fri Mar 24 06:41:04 2006

(c) Copyright IBM Corporation 2005, 2006.
This information center is powered by Eclipse technology (http://www.eclipse.org)