Cosminexus サービスプラットフォーム システム構築・運用ガイド

[目次][用語][索引][前へ][次へ]

5.5.3 ビジネスプロセスの再実行

ビジネスプロセス実行中に,実行基盤のあるマシンが停止したり,サービス部品の呼び出しに失敗したりした場合,障害が発生して中断したプロセスインスタンスを再実行できます。プロセスインスタンスを再実行することで,ビジネスプロセスの内容が処理できます。

<この項の構成>
(1) 運用環境の画面からの再実行
(2) コマンドからの再実行
(3) サービスリクエスタからの再実行(SOAP通信)
(4) サービスリクエスタからの再実行(SessionBean)

(1) 運用環境の画面からの再実行

運用環境の画面から,中断したプロセスインスタンスを一件ずつ再実行できます。

画面によるプロセスインスタンスの再実行の詳細については,「6.1.5 プロセスインスタンスを再実行する」を参照してください。

(2) コマンドからの再実行

コマンドを使用して,中断したプロセスインスタンスを一件ずつ再実行できます。

また,複数のプロセスインスタンスが同一のビジネスプロセス定義名である場合,複数のプロセスインスタンスを一括して再実行できます。プロセスインスタンスの実行履歴の一括再実行は,コマンドでだけ実行できます。

コマンドによるプロセスインスタンスの再実行の詳細については,「6.1.5 プロセスインスタンスを再実行する」を参照してください。

(3) サービスリクエスタからの再実行(SOAP通信)

SOAPフォルトや例外になって中断したプロセスインスタンスは,システム運用管理者だけでなく,サービスリクエスタからも再実行できます。

サービスリクエスタから再実行するには,標準の同期受付(Webサービス)に要求を出すサービスリクエスタを作成します。

サービス部品の呼び出しがエラーになり,ビジネスプロセスインスタンスIDがエラー情報として返ってきた場合は,そのビジネスプロセスインスタンスIDを指定して再実行します。SOAP通信でのサービスリクエスタからの要求の再実行を次の図に示します。

図5-46 SOAP通信でのサービスリクエスタからの要求の再実行

[図データ]

なお,ユーザ定義受付を使用してサービス部品を呼び出して再実行する場合,標準受付に対して再実行を要求するようなサービスリクエスタを作成する必要があります。ビジネスプロセスの再実行を要求するサービスリクエスタの作成については,マニュアル「Cosminexus サービスプラットフォーム 開発ガイド」を参照してください。

(4) サービスリクエスタからの再実行(SessionBean)

標準の同期受付(SessionBean)に要求を出すサービスリクエスタからも,ビジネスプロセスの再実行要求ができます。サービスリクエスタから再実行するには,標準の同期受付(SessionBean)に要求を出すサービスリクエスタを作成します。

サービス部品呼び出しがエラーになり,ビジネスプロセスインスタンスIDが例外(エラー情報)として返ってきた場合は,そのビジネスプロセスインスタンスIDを指定して再実行します。SessionBeanでのサービスリクエスタからのビジネスプロセスの再実行を次の図に示します。

図5-47 SessionBeanでのサービスリクエスタからのビジネスプロセスの再実行

[図データ]

ビジネスプロセスの再実行を要求するサービスリクエスタの作成については,マニュアル「Cosminexus サービスプラットフォーム 開発ガイド」を参照してください。