5.5.4 強制停止処理とは
強制停止処理では,通常停止のときの閉塞処理や停止処理は実行されません。J2EEアプリケーションで処理中のリクエストがある場合でも,強制的に処理が中止されます。なお,実行中のメソッドについてはメソッドキャンセルが実行されます。
- J2EEアプリケーションを強制停止したときのトランザクションの扱い
-
J2EEアプリケーションの強制停止を実行すると,仕掛かり中のトランザクションは強制的にタイムアウトされます。このため,J2EEアプリケーションを強制停止したあとにトランザクションを開始しようとすると,例外が発生してトランザクションを開始できません。
ただし,インプロセスOTSが複数のJavaVMにわたって動作しているときには,J2EEアプリケーションを強制停止しても,トランザクションは強制的にタイムアウトされません。
また,J2EEアプリケーションの強制停止時に,Statement,CallableStatement,またはPreparedStatementでSQLが実行されている場合,実行は取り消され,制御をJ2EEアプリケーションに戻そうとします。J2EEアプリケーションで使用していたコネクションは破棄され,プールには戻りません。
トランザクションタイムアウトの詳細については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.8 トランザクションタイムアウトとステートメントキャンセル」を参照してください。