JSP クラス・ロードの設定

JavaServer Pages (JSP) クラスは、 JSP エンジンのクラス・ローダーまたは Web モジュールのクラス・ローダーのいずれかによってロードされるように構成できます。

デフォルトでは、 JSP クラスは、JSP エンジンのクラス・ローダーの固有のインスタンスによってロードされます。 JSP エンジンのクラス・ローダーを使用すると、JSP ソースまたはその依存関係の 1 つが変更された際に、JSP クラスの実行時での再ロードが可能になります。 これにより、必要な場合に、ほかのロード済み JSP クラスに影響を及ぼすことなく、 1 つの JSP クラスを再ロードできます。

JSP クラスは、以下のシナリオのいずれかで、 Web モジュールのクラス・ローダーによってロードされます。
  1. このセクションで後に示す表の <servlet-class> シナリオにより、JSP エンジン構成パラメーター useFullPackageNames が true に設定され、JSP ファイルが web.xml ファイル内にサーブレットとして構成されます。
  2. JSP エンジン構成パラメーター useFullPackageNames および disableJspRuntimeCompilation が両方とも true に設定されます。 この場合、JSP ファイルをサーブレットとして web.xml ファイル内に構成する必要はありません。

サーブレットとしての JSP ファイルの構成

JSP ファイルをサーブレットとして web.xml ファイル内に構成することができます。これを行うには、2 つの方法があります。 このセクションで後に示す表に、これらは説明されています。

JSP ファイルをサーブレットとして構成する前に、 以下について検討してください。
  1. 再ロード機能 - JavaServer Pages ファイルのランタイム再ロードが必要な場合、 JavaServer Pages ファイルへの要求は、JSP エンジンによって処理されなければなりません。 このセクションで後に示す表の <servlet-class> シナリオは、ランタイム JSP ファイルの再 ロードを使用不可にします。一方、<jsp-file> シナリオは再ロードと互換性があります。
  2. クラス・ローダーの数の削減 - 変更された JSP ページのランタイム再ロードを必要とせず、クラス・ローダー・インスタンスの数を削減したい場合には、 以下の表の <servlet-class> シナリオを使用できます。 同様に、セクション 1 のシナリオ 2 は、 JSP ファイルをサーブレットとして構成する必要なく使用できます。
表 1. 例: JSP ファイルをサーブレットとして web.xml ファイルに構成します。. JSP ファイルをサーブレットとして構成します
シナリオ ランタイム再ロードと互換性があります 複数のクラス・ローダーを使用しますか? useFullPackageNames
<jsp-file> <servlet>

<servlet-name>jspOne</servlet-name>

<jsp-file>jspOne.jsp</jsp-file>

</servlet>

はい はい true または false のいずれかが可能
<servlet-class> <servlet>

<servlet-name>jspTwo</servlet-name>

<servlet-class>_ibmjsp.jspTwo</servlet-class>

</servlet>

いいえ いいえ true でなければなりません

JSP バッチ・コンパイラー・ツールは、 JavaServer Pages ファイルをサーブレットとして構成するのに役立ちます。 useFullPackageNames が true である場合、JSP バッチ・コンパイラーは、 <servlet> および <servlet-mapping> エレメントを JSP ファイルご とに生成して、正常に変換およびコンパイルします。 これらのエレメントは、 generated_web.xml という名前の web.xml フラグメント・ファイルに書き込まれます。 このファイルは、JSP ファイル・バッチ・コンパイラーによって処理された Web モジュールのバイナリー WEB-INF ディレクトリーに置かれています (このディレクトリーは、デプロイされたアプリケーションの EAR ファイル内にあります)。 これらのエレメントのすべてまたは一部を web.xml ファイルに コピーして貼り付けると、JavaServer Pages ファイルをサーブレットとして構成できます。

アプリケーション・サーバーによって使用される web.xml の場所を書き留めておいてください。 アプリケーション固有の構成は、アプリケーション・バイナリー (アプリケーションの EAR ファイル) または構成リポジトリーのいずれかから入手できます。 アプリケーションが、フラグ「バイナリー構成の使用」を true に設定して WebSphere® Application Server にデプロイされている場合には、WEB-INF/web.xml ファイルは、構成リポジトリーではなく、Web モジュールのバイナリー・ディレクトリー内で検索されます。 これらの 2 つのロケーションの例を以下に挙げます。
  • [AIX Solaris HP-UX Linux Windows][z/OS]構成リポジトリー・ディレクトリーの例は、次のようになります。{WAS_ROOT}/profiles/profilename/config/cells/cellname/applications/enterpriseappname/deployments/deployedname/webmodulename
  • [IBM i]構成リポジトリー・ディレクトリーの例は、次のようになります。profile_root/config/cells/cellName/applications/enterpriseAppName/deployments/deployedName/webModuleName
  • [AIX Solaris HP-UX Linux Windows][z/OS]アプリケーションのバイナリー・ディレクトリーの例は、次のようになります。{WAS_ROOT}/profiles/profilename/installedApps/nodename/EnterpriseAppName/WebModuleName/
  • [IBM i]アプリケーションのバイナリー・ディレクトリーの例は、次のようになります。 profile_root/installedApps/nodeName/EnterpriseAppName/WebModuleName/

JSP バッチ・コンパイラーが、 事前デプロイされたアプリケーション上で実行された場合には、 web.xml ファイルは Web モジュールの WEB-INF ディレクトリー内にあります。


トピックのタイプを示すアイコン 参照トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cweb_jspclassloading
ファイル名:cweb_jspclassloading.html