アプリケーション連携実行基盤では、業務処理の実行前や実行後、また業務処理でエラーが発生したときなどに、以下の処理を呼び出すことができます。
なお、以下の処理は、実装、配備されていれば自動的に実行されます。とくに該当する処理を行わない場合は、実装、配備する必要はありません。
また、非同期アプリケーション連携実行基盤の場合、以下の処理はフロー定義の呼出し定義に定義する必要はありません。
注意
C言語アプリケーションを使用できるのは、同期アプリケーション連携実行基盤だけです。
初期処理
ワークユニット起動時に、1つのプロセスについて1回だけ呼び出す処理です。
業務処理に必要なリソースの獲得や初期化などを行います。
初期処理は、サーバアプリケーションをC言語またはCOBOLで作成した場合にだけ呼び出します。
前処理
業務処理の直前に呼び出す処理です。以下の契機で呼び出します。
同期アプリケーション連携実行基盤の場合:クライアントからの要求ごと
非同期アプリケーション連携実行基盤の場合:メッセージがアクティビティを通過するごと
業務処理を開始する際にリソースを初期化するなど、業務処理単位の初期処理を行います。
後処理
業務処理が正常終了したとき、業務処理の直後に呼び出す処理です。以下の契機で呼び出します。
同期アプリケーション連携実行基盤の場合:クライアントからの要求ごと
非同期アプリケーション連携実行基盤の場合:メッセージがアクティビティを通過するごと
業務処理を終了する際にリソースを解放するなど、業務処理単位の終了処理を行います。
エラー処理
前処理/業務処理/後処理が異常終了した場合に、その直後に呼び出す処理です。
エラー発生時のリソースの初期化など、業務処理単位のエラー後処理を行います。
なお、サーバアプリケーションをJavaで作成した場合、エラー処理を実行するにはアプリケーション連携実行基盤に対して例外をthrowする必要があります。例外処理が業務処理内で完結している場合、エラー処理は呼び出されません。また、業務処理のコンストラクタで例外が発生した場合もエラー処理は呼び出されません。
トランザクション後メッセージ編集処理
同期アプリケーション連携実行基盤で管理しているトランザクションの完了後に呼び出す処理です。トランザクション完了の結果により、クライアントへ返却するエラーメッセージを編集する場合に使用します。
同期アプリケーション連携実行基盤を利用している場合にだけ呼び出すことができます。
終了処理
ワークユニット停止時に、1つのプロセスについて1回だけ呼び出す処理です。
各処理で獲得したリソースの解放などを行います。
終了処理は、サーバアプリケーションをC言語またはCOBOLで作成した場合にだけ呼び出します。
以下に、各処理の呼出しシーケンスを示します。
サーバアプリケーションがC言語またはCOBOLの場合
なお、スレッドモードの場合は、上図のa)からc)は同一プロセスの異なるスレッドから呼び出されます。また、プロセスモードの場合は、上図のa)からc)は同一プロセスから呼び出されます。
サーバアプリケーションがJavaの場合
サーバアプリケーションがJavaで業務処理が複数ある場合