Hitachi

uCosminexus Service Coordinator Interactive Workflow システム構築・運用ガイド


2.6.2 作業アプリケーションの同期呼び出し

作業アプリケーションの同期呼び出しをする機能として「Javaオブジェクト呼び出し」機能があります。

作業アプリケーションの同期呼び出しは,API(案件投入APIや作業完了APIなど)と同期を取り,作業アプリケーションを起動します。CSCIWと関連づけたコネクションを渡すため,APIと同じトランザクションで処理を実行できます。APIと同じトランザクションで処理を実行したい場合,または比較的処理時間の短い業務を実行する場合に使用します。

なお,処理中にエラーが発生した場合,作業アプリケーションの処理もロールバックされます。再実行するときはAPIを再実行する必要があります。

作業アプリケーション同期呼び出しの概要を次の図に示します。

図2‒37 作業アプリケーション同期呼び出しの概要

[図データ]

図中の番号は,次の説明の番号に対応しています。

<説明>
  1. 業務アプリケーションがトランザクションを開始します。

  2. 業務アプリケーションが案件投入APIを実行します。

  3. CSCIWが案件を生成,開始します。

  4. ビジネスプロセス定義に従い,「作業1」を生成します。

  5. 「作業1」に作業アプリケーションの呼び出しが定義されている場合,作業アプリケーション(「作業アプリケーション1」)の呼び出しを実行します。

  6. 作業アプリケーション(「作業アプリケーション1」)は業務処理を行い,戻り値で作業の完了通知を行います。

  7. 作業アプリケーション(「作業アプリケーション1」)から作業の完了通知を受けたCSCIWは「作業1」を完了します。

  8. ビジネスプロセス定義に従い,業務ステップを遷移し,新たに「作業2」を生成します。

  9. 「作業2」に作業アプリケーションの呼び出しが定義されている場合,作業アプリケーション(「作業アプリケーション2」)の呼び出しを実行します。

  10. 作業アプリケーション(「作業アプリケーション2」)は,業務処理を行い,戻り値で作業の着手を行います。

  11. 作業アプリケーション(「作業アプリケーション2」)から作業の着手の指示を受けたCSCIWは「作業2」を着手します。

  12. 作業が完了しないため,遷移を終了して,業務アプリケーションへ戻ります。

  13. 業務アプリケーションはトランザクションをコミットします。

同期呼び出しの場合,作業アプリケーションも含め,すべて同一トランザクションで処理を行います。上の説明では,1.〜12.が1つのトランザクションとなります。処理の途中(例えば,10.の作業着手処理)でエラーが発生した場合,案件投入がエラーとなります。すべての処理がロールバックされるため,案件投入前の状態に戻ります。