Cosminexus V9 アプリケーションサーバ 機能解説 互換編

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

3.4.3 JSPファイルのコンパイル結果の保持

JSPは,Webコンテナ上でコンパイルされ,Javaソースファイルおよびクラスファイルが生成されます。Webコンテナでは,JSPのコンパイル結果である,Javaソースファイルおよびクラスファイルを,Webコンテナサーバの再起動時に保持するかどうか設定できます。

JSPのコンパイル結果の保持機能は,デフォルトの設定では実行されません。必要に応じて実行するように設定してください。

JSPのコンパイル結果の保持に関する設定は,Webコンテナサーバのプロパティをカスタマイズして設定します。設定については,「3.7.4 Webコンテナサーバの動作設定のカスタマイズ」を参照してください。

ここでは,コンパイル結果が生成,削除されるタイミングについて説明します。また,Webアプリケーションがアンデプロイされた場合,およびJSPファイルが更新された場合のJSPコンパイル結果の動作についても説明します。

<この項の構成>
(1) コンパイル結果の生成
(2) コンパイル結果の削除
(3) Webアプリケーションアンデプロイ時の動作
(4) JSPファイルを更新する場合の動作
(5) JSPファイルがインクルードされた場合の注意事項

(1) コンパイル結果の生成

JSPのコンパイル結果は,次のタイミングで生成されます。

(2) コンパイル結果の削除

JSPのコンパイル結果は,次のタイミングで削除されます。

注※1
次のどちらかの場合にだけ削除されます。
  • JSPコンパイル結果を保持しない設定にしている場合
  • JSP用テンポラリディレクトリにJSPコンパイル結果が保持されている場合
    これは,サーバが強制終了された場合に備えて実施されます。

注※2
JSPコンパイル結果保持を無効にした場合だけ削除します。

(3) Webアプリケーションアンデプロイ時の動作

サーブレットエンジンモードの場合,WebアプリケーションをアンデプロイしてもJSPコンパイル結果は削除されません。このため,JSPのコンパイル結果を保持する設定でWebコンテナを稼働したあとにJSPコンパイル結果が不要となった場合,またはWebアプリケーションをアンデプロイした場合は,JSPのコンパイル結果を手動で削除する必要があります。削除方法について次に示します。

削除方法
JSPコンパイル結果の削除をするには,Webコンテナサーバ終了後に,削除対象のWebアプリケーションのJSP用テンポラリディレクトリに作成されるWebアプリケーション単位のディレクトリ以下を削除します。JSP用テンポラリディレクトリは,usrconf.propertiesで設定します。

(4) JSPファイルを更新する場合の動作

サーブレットエンジンモードでは,JSPファイルを直接編集,またはファイルの上書きで更新できます。JSPコンパイル結果を保持している状態では,JSPの初回ロード時に,保持されたクラスファイルをロードする場合と,更新されたJSPファイルのコンパイル結果であるクラスファイルをロードする場合があります。どちらのクラスファイルをロードするかについては,更新されたJSPファイルと,保持されたクラスファイルの更新日時によって次のように決まります。

(5) JSPファイルがインクルードされた場合の注意事項

includeディレクティブを使用してインクルードされたJSPファイルを更新しても,インクルード元のJSPファイルは再コンパイルされません。再コンパイルを実行する場合には,インクルード元のJSPファイルを更新してください。