JSP エンジン構成パラメーター

WebSphere® Application Server では、実動サーバー環境でのパフォーマンスを最適化し、開発環境での開発者のニーズに応えるように、Java™Server Pages (JSP) エンジンの構成パラメーターを構成することができます。

JSP エンジン・パラメーターには、大/小文字の区別があります。パラメーターに指定された値がスペースで区切られた複数の語で構成されている場合は、その値を引用符で囲む必要があります。パラメーターのなかには、 JSP ファイルまたはタグ・ファイル用に生成される Java ソースに影響を与えるものがあります。そういったパラメーターは、「このパラメーターでは Java ソースの再生成が必要です」という記述によって識別されます。 この記述は、その構成パラメーターが変更されても、JSP ファイルが再変換されて、Java ソースが再コンパイルされるまでは、パラメーターの値が有効にならないことを示します。

ベスト・プラクティス ベスト・プラクティス: Rational Application Developer などの アセンブリー・ツールを使用して、IBM 拡張ファイルおよびバインディング・ファイルを 変更します。 IBM Bindings and Extensions Conversion Tool for Multi-Platforms を使用することによって、モジュール内の拡張ファイルおよびバインディング・ファイルを XMI から XML に変換できます。bprac

allowMultipleAttributeValues

JSP コンテナーが複数のカスタム・タグ属性の値を格納できるかどうかを 指定します。JSP コンテナーでの複数の値の格納を許可するには、このパラメーターを true に設定します。このパラメーターのデフォルト値は false です。このパラメーターでは Java ソースの再生成が必要です

compileWithAssert

生成された Java クラスが、 Developer Kit, Java Technology Edition 1.4 表明機能をサポートするかどうかを指定します。 このパラメーターを true に設定すると、-source 1.4 オプションが Java コンパイラーに渡されます。このパラメーターのデフォルトは false です。このパラメーターでは Java ソースの再生成が必要です

classdebuginfo

コンパイラーが生成済みクラス・ファイルにデバッグ情報を組み込むかどうかを指定します。 このパラメーターを true に設定すると、-g オプションが Java コンパイラーに渡されます。このパラメーターのデフォルトは false です。このパラメーターでは Java ソースの再生成が必要です

convertAttrValueToString

繰り返しタグの開始属性と終了属性が使用される前に、それらの属性をストリングに変換するかどうかを指定します。このパラメーターのデフォルトは false です。このパラメーターでは Java ソースの再生成が必要です

deprecation

生成された Java ソースのコンパイル時に、 コンパイラーが使用停止警告を生成するかどうかを指定します。 このパラメーターを true に設定すると、-deprecation オプションが Java コンパイラーに渡されます。このパラメーターのデフォルトは false です。このパラメーターでは Java ソースの再生成が必要です

disableElCache

ハッシュ・マップが式エバリュエーターによって保持されるためにメモリー不足条件が発生する場合には、commons-el 式キャッシュを使用不可にするために、このパラメーターを true に設定します。このパラメーターのデフォルトは false です。

disableJspRuntimeCompilation

このオプションが true に設定されている場合、JSP エンジンは実行時に JSP ファイルの変換およびコンパイルを行わないため、JSP エンジンはプリコンパイルされたクラス・ファイルのみをロードします。クラス・ファイルをロードするために JSP ソース・ファイルは必要ありません。このオプションが true に設定されると、JSP ソースなしでアプリケーションをインストールすることができますが、 アプリケーションにはプリコンパイルされたクラス・ファイルが必要になります。 同じ名前の Web コンテナー・カスタム・プロパティーが、サーバーにインストールされたすべての Web モジュールの振る舞いを決定するために使用されます。Web コンテナー・カスタム・プロパティーと JSP エンジン・オプションの両方が設定されている場合、JSP エンジン・オプションが優先されます。このパラメーターのデフォルトは false です。

disableTldSearch

このオプションを true に設定すると、アプリケーションの開始時に、JSP エンジンがアプリケーション・インストール・ディレクトリーを検索して taglib ディスクリプター (TLD) ファイルを見つける処理が回避されます。このオプションが false に設定されている場合は、アプリケーションを始動するときに、JSP エンジンがアプリケーションのインストール・ディレクトリーで TLD ファイルを検索します。このパラメーターのデフォルトは false です。

Web コンテナー・カスタム・プロパティー com.ibm.wsspi.jsp.disableTldSearch を使用して、 サーバーにインストールされたすべての Web モジュール内の JSP エンジンが、アプリケーション開始時にアプリケーション・インストール・ディレクトリーを検索して TLD ファイルを見つける処理を行わないかどうかを指定できます。Web コンテナーのカスタム・プロパティーと JSP エンジン・オプションに設定した値が競合している場合は、JSP エンジン・オプションの設定値が優先されます。

注: このオプションは、バージョン・レベル 7.0.0.3 以上でのみ使用可能です。

evalQuotedAndEscapedExpression

式を評価するかどうかを判別する場合に、エスケープ文字および引用符を適切に処理するには、このオプションを true に設定します。

JSP コンパイルの変換フェーズ中に、JSP エンジンによって式が評価されます。 エスケープ文字 (¥) やネストされた単一引用符または二重引用符などの文字は、JSP ファイル変換の失敗の原因になります。 評価される文字を含んでいる関数の例を以下に示します。
<input type="text" value="${fn:substring('1234567', 0,4)}"/>
fn:substring ステートメントの直前に二重引用符があるため、 変換プログラムは、生成された Java クラスに関数マッパーを追加しませんでした。 そのため、JSP ファイルはコンパイルに失敗します。また、バックスラッシュを使用してドル記号 ($) がエスケープされた (¥$) 場合も、変換プログラムは式をリテラル・ストリングとして処理しないで、評価しようとします。エスケープ文字および引用符を適切に処理するには、障害が起こったアプリケーションの ibm-web-ext.xmi ファイルまたは ibm-web-ext.xml ファイルで、evalQuotedAndEscapedExpressiontrue に設定する必要があります。
以下のコード・サンプルは、ibm-web-ext.xmi ファイル内の項目を示します。
<jspAttributes xmi:id="JSPAttribute_1" 
name="evalQuotedAndEscapedExpression" value="true"/> 
以下のコード・サンプルは、ibm-web-ext.xml ファイル内の項目を示します。
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
   xmlns="http://websphere.ibm.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
      version="1.0">
   <file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
   <jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
   <jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir","${MY_CUSTOM_VARIABLE}"  />
   
   <reload-interval value="3"/>
   <auto-encode-requests value="false"/>
   <auto-encode-responses value="false"/>
   <enable-directory-browsing value="false"/>
   <enable-file-serving value="true"/>
   <pre-compile-jsps value="false"/>
   <enable-reloading value="true"/>
   <enable-serving-servlets-by-class-name value="false" />	
</web-ext>

この動作をすべての Web アプリケーションにグローバルに適用するには、com.ibm.wsspi.jsp.evalQuotedAndEscapedExpression Web コンテナー・カスタム・プロパティーを true に設定します。

extendedDocumentRoot

Web アプリケーション・アーカイブ (WAR) ディレクトリーの外部にあるファイルへのアクセスをアプリケーションが要求する場合は、拡張文書ルート機能を使用します。この機能により、提供可能な静的ファイルと JSP ファイルがある 1 つ以上のディレクトリー・パスを使用してアプリケーションを構成することができます。この属性は、Web アプリケーション・アーカイブ (WAR) ディレクトリーの外部にあるファイルへのアクセスをアプリケーションが要求したときに使用できます。例えば、複数のアプリケーションが 1 組の共通ファイルへのアクセスを要求する場合は、各アプリケーションのリンク先にできるディレクトリーを文書の拡張ルート・ディレクトリーとし、そのディレクトリーにそれらの共通ファイルを置くことができます。

拡張文書ルートを使用してアプリケーションを構成するには、extendedDocumentRoot 属性をファイル・サービス属性として、アプリケーション用 ibm-web-ext.xmi ファイルまたは ibm-web-ext.xml ファイルに追加します。この属性の値は、静的ファイルのルート・ディレクトリー・ロケーションとして機能するディレクトリーをコンマで区切ったリストです。

以下に、ibm-web-ext.xmi ファイル内のエントリー例を示します。
<fileServingAttributes xmi:id="FileServingAttribute_1" name="extendedDocumentRoot" value="/opt/extDocRootDir"/>
以下は、属性を /opt/extDocRootDir 値に設定した ibm-web-ext.xmi ファイル内の上記エントリーを基にした例です。
  • http://localhost:9080/context_root/sample.html リソースの要求では、sample.html ファイルが /opt/extDocRootDir/sample.html ディレクトリー構造内に配置されている必要があります。
  • http://localhost:9080/context_root/myDir/sample.gif リソースの要求では、sample.gif ファイルが /opt/extDocRootDir/myDir/sample.gif ディレクトリー構造内に配置されている必要があります。
以下に、ibm-web-ext.xml ファイル内のエントリー例を示します。
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
   xmlns="http://websphere.ibm.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
      version="1.0">
   <file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
   <jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
   <jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir", "${MY_CUSTOM_VARIABLE}"/>
   <reload-interval value="3"/>
   <auto-encode-requests value="false"/>
   <auto-encode-responses value="false"/>
   <enable-directory-browsing value="false"/>
   <enable-file-serving value="true"/>
   <pre-compile-jsps value="false"/>
   <enable-reloading value="true"/>
   <enable-serving-servlets-by-class-name value="false" />	
</web-ext>
重要: 拡張文書ルート・ディレクトリーから静的ファイルを処理するには、ファイル・サービスを有効にする必要があります。

処理された JSP ファイルがある拡張文書ルートを使用してアプリケーションを構成するには、extendedDocumentRoot 属性を JSP 属性として、ibm-web-ext.xmi ファイルまたは ibm-web-ext.xml ファイルに追加します。この属性の値は、JSP ファイルのルート・ディレクトリー・ロケーションとして機能するディレクトリーをコンマで区切ったリストです。

以下に、ibm-web-ext.xmi ファイル内のエントリー例を示します。
<jspAttributes xmi:id="JSPAttribute_1" name="extendedDocumentRoot" value="/opt/extDocRootDir"/>
以下の例は、ibm-web-ext.xml ファイル内の項目を示します。
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
   xmlns="http://websphere.ibm.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
      version="1.0">
   <file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
   <jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
   <jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir", "${MY_CUSTOM_VARIABLE}" />
   <reload-interval value="3"/>
   <auto-encode-requests value="false"/>
   <auto-encode-responses value="false"/>
   <enable-directory-browsing value="false"/>
   <enable-file-serving value="true"/>
   <pre-compile-jsps value="false"/>
   <enable-reloading value="true"/>
   <enable-serving-servlets-by-class-name value="false" />	
</web-ext>

また、extendedDocumentRoot 属性を使用して、適切なディレクトリーに対して複数のノードに WebSphere 変数を定義することもできます。

ibm-web-ext.xmi の例:
<jspAttributes xmi:id="JSPAttribute_2" name="extendedDocumentRoot" 
  				value="${MY_CUSTOM_VARIABLE}"/>
ibm-web-ext.xml の例:
 <jsp-attribute name="extendedDocumentRoot" 
    value="${MY_CUSTOM_VARIABLE}" />
ここで、MY_CUSTOM_VARIABLE は、 複数のノードに定義する WebSphere 変数です。
以下の例は、ファイル・サービスと JSP の両方の属性として拡張文書ルートを定義する ibm-web-ext.xmi ファイルを示しています。
<?xml version="1.0" encoding="UTF-8"?>
<com.ibm.ejs.models.base.extensions.webappext:WebAppExtension xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:com.ibm.ejs.models.base.extensions.webappext="webappext.xmi" xmi:id="WebAppExtension_1"
          reloadInterval="3"
          reloadingEnabled="true"
          fileServingEnabled="true">
      <webApp href="WEB-INF/web.xml#WebApp_ID/">
      <fileServingAttributes xmi:id="FileServingAttribute_1" name="extendedDocumentRoot"
       value="/opt/extDocRootDir/">
      <jspAttributes xmi:id="JSPAttribute_1" name="extendedDocumentRoot"
       value="/opt/extDocRootDir/">
<com.ibm.ejs.models.base.extensions.webappext:WebAppExtension>
以下の例は、ファイル・サービスと JSP の両方の属性として拡張文書ルートを定義する ibm-web-ext.xml ファイルを示しています。
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
   xmlns="http://websphere.ibm.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
      version="1.0">
   <file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
   <jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
   <jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir","${MY_CUSTOM_VARIABLE}"  />
   
   <reload-interval value="3"/>
   <auto-encode-requests value="false"/>
   <auto-encode-responses value="false"/>
   <enable-directory-browsing value="false"/>
   <enable-file-serving value="true"/>
   <pre-compile-jsps value="false"/>
   <enable-reloading value="true"/>
   <enable-serving-servlets-by-class-name value="false" />	
</web-ext>

要求が「ようこそ」ファイルに関する有効な要求の一部である場合は、404 エラーが戻されます。 JSP ファイルが JAR ファイル内にあり、reloadEnabled 属性値が true の場合、JAR ファイルのタイム・スタンプは、再コンパイル目的で isOutDated チェックに使用されます。 このパラメーターのデフォルトは null です。

サポートされる構成 サポートされる構成: IBM® 拡張ファイル およびバインディング・ファイルの場合、.xmi または .xml ファイル名拡張子は、Java EE 5 より前のアプリケーションまたはモジュールを使用しているか、 あるいは Java EE 5 以降のアプリケーションまたは モジュールを使用しているかによって異なります。IBM 拡張 ファイルまたはバインディング・ファイルは、ibm-*-ext.xmi または ibm-*-bnd.xmi という名前です。 ここで * は拡張ファイルまたはバインディング・ファイルのタイプ (app、application、ejb-jar、 または web など) です。以下の条件が適用されます。
  • バージョン 5 より前の Java EE バージョンを使用するアプリケーションまたはモジュールの場合、ファイル拡張子は .xmi でなければなりません。
  • Java EE 5 以降を使用するアプリケーションまたはモジュールの場合、ファイル拡張子は .xml でなければなりません。.xmi ファイルがアプリケーションまたはモジュールに組み込まれている場合、.xmi ファイルは無視されます。

ただし、Java EE 5 以降のモジュールが、Java EE 5 より前のファイルを含み .xmi ファイル名拡張子を使用する アプリケーション内に存在することは可能です。

ibm-webservices-ext.xmiibm-webservices-bnd.xmiibm-webservicesclient-bnd.xmiibm-webservicesclient-ext.xmi、 および ibm-portlet-ext.xmi ファイルは、引き続き .xmi ファイル拡張子 を使用します。

sptcfg

ieClassId

Internet Explorer の Java プラグイン COM クラス ID を示します。

<jsp:plugin> タグは、この値を使用します。デフォルトのクラス IDclsid:8AD9C840-044E-11D1-B3E9-00805F499D93 です。

javaEncoding

.java ファイルの生成時、 および Java コンパイラーによるコンパイル時に使用されるエンコード方式を指定します。 JSP ページのページ・エンコードが UTF-8 と互換性がない場合は、このパラメーターを設定します。 javaEncoding が設定されていると、 そのエンコード方式は、-encoding 引数を介して Java コンパイラーに 渡されます。Jikes ではエンコードはサポートされていません。 デフォルトは UTF-8 です。 このパラメーターでは Java ソースの再生成が必要です

jdkSourceLevel

この JSP エンジン・パラメーターは、WebSphere Application Server バージョン 6.1 で導入されました。このパラメーターを compileWithAssert パラメーターの代わりに使用してください。ただし、バージョン 6.1 でも compileWithAssert は引き続き機能します。

このパラメーターのデフォルト値は 17 です。このパラメーターでは Java ソースの再生成が必要です 以下に、jdkSourceLevel パラメーターの値を挙げておきます。
  • 13 は、JDK 1.4、JDK 5.0、JDK 6.0、および JDK 7.0 の新規言語フィーチャーをすべて使用不可にします。
  • 14 は、表明機能を使用可能にし、JDK 5.0、JDK 6.0、および JDK 7.0 の新規言語フィーチャーをすべて使用不可にします。
  • 15 は、表明機能を使用可能にし、JDK 6.0 および JDK 7.0 の新規言語フィーチャーをすべて使用不可にします。
  • 16 は、表明機能を使用可能にし、JDK 7.0 の新規言語フィーチャーをすべて使用不可にします.
  • 17 は、JDK 7.0 の新規フィーチャーを使用可能にします。
  • 18 は、JDK 8.0 の新規フィーチャーを使用可能にします。

jspClassLoaderLimit

WebSphere Application Server は、アプリケーションの各 JSP に JSPExtensionClassLoader オブジェクトを作成します。この結果、 これらのオブジェクトが使用するネイティブ・メモリーが増加して、OutOfMemoryException が発生することがあります。この整数値は、メモリーにロードして維持する JSPExtensionClassLoader オブジェクトの数を決定します。

<jspAttributes xmi:id="JSPAttribute_1" name="jspClassLoaderLimit" value="1500"/>

jspClassLoaderExclusionList

jspClassLoaderLimit ではメモリーにロードして維持する JSPExtensionClassLoader オブジェクトの数を指定しますが、JSP 値をコンマで区切ったこのリストでは、jspClassLoaderLimit で設定した制限に関係なくアンロードしない JSP を指示します。

<jspAttributes xmi:id="JSPAttribute_2" name="jspClassLoaderExclusionList" value="/test/RappHTML2.jsp,/test/RappHTML4.jsp"/>

jsp.file.extensions

.jsp.jspx.jsw および .jsv という 4 つの標準拡張子以外の拡張子を持つ JSP ファイルでは、 このパラメーターを使用して拡張子を構成することができます。これらの拡張子は、標準の拡張子に追加されます。

その際に優先される方法は、web.xml<jsp-property-group> を作成し、 各拡張子に <url-pattern> タグを追加するというものです。

JSP エンジンは、コロンまたはセミコロンで区切られたファイル拡張子のリストを処理することができます。例: .ext1;.ext2:.extn

keepgenerated

処理の変換フェーズ中に JSP コンパイラーが生成した Java ファイルが保持されることを示します。 このパラメーターのデフォルトは false です。このパラメーターでは Java ソースの再生成が必要です

keepGeneratedclassfiles

処理の変換フェーズ中に JSP コンパイラーが生成したクラス・ファイルが保持されることを示します。 このパラメーターのデフォルトは true です。このパラメーターでは Java ソースの再生成が必要です

modifyPageContextVariable

コンパイルされたタグ・ファイルの変換フェーズ中に、JSP コンテナーは、PageContext オブジェクトに対して pageContext 変数を暗黙的に使用します。タグ・ファイル内で pageContext 変数を暗黙変数名として使用することは、JSP 仕様に準拠した操作ではありません。タグ・ファイル内のローカル pageContext 変数を使用するアプリケーションでコンパイル・エラーが発生した場合は、modifyPageContextVariable 属性を true に設定し、タグ・ファイルに対して生成された Java コード内で pageContext 変数を使用しないようにしてください。

recompileJspOnRestart

最初にファイルが要求されてアプリケーションが開始した後に、JSP ファイルの再変換および再コンパイルを実行するかどうかを判別します。 recompileJspOnRestart が false の場合、パラメーター disableJspRuntimeCompilationtrue でない場合は、必要に応じて、JSP ファイルは最初の要求でコンパイルされます。このパラメーターのデフォルトは false です。

reloadEnabled

JSP ファイルまたはその依存関係 (trackDependencies を参照) が変更される場合、JSP ファイルが実行時に変換およびコンパイルされるかどうかを決定します。

reloadEnabled が false の場合、パラメーター disableJspRuntimeCompilation が true でない場合は、 必要に応じて、JSP ファイルは最初の要求でコンパイルされます。このパラメーターのデフォルトは false です。

この JSP エンジン・パラメーターが指定されていない場合は、Web モジュール・クラスの再ロードに、同等な Web コンテナー・パラメーターが使用されます。ただし、デプロイメント記述子がサーブレット 2.2 レベルであるアプリケーションでは、デフォルトは true になります。これは、WebSphere Application Server バージョン 4.x からマイグレーションされるアプリケーションをサポートするために行われます。

reloadInterval

再ロードが使用可能になっている場合は、reloadInterval により、 JSP ファイルが期限切れになっているかどうかを確認するための検査の間隔が決まります。

例えば、reloadInterval が 5 だとすると、JSP エンジンは、JSP ファイルが期限切れになっているかどうかの検査を、 そのような検査が最後に行われてから JSP ファイルに対する現行要求までに、5 秒より長く経過している場合にのみ実行します。reloadInterval が大きくなればなるほど、 JSP エンジンが JSP ファイル再ロードの必要性を検査する頻度は少なくなります。この JSP エンジン・パラメーターが指定されていない場合は、Web モジュール・クラスの再ロードに、同等な Web コンテナー・パラメーターが使用されます。ただし、デプロイメント記述子がサーブレット 2.2 レベルであるアプリケーションでは、デフォルトは 5 秒になります。 これは、WebSphere Application Server バージョン 4.x からマイグレーションされるアプリケーションをサポートするために行われます。

reusePropertyGroupConfigOnInclude

移行ユーザーの方へ 移行ユーザーの方へ: JSP 属性グループで定義されているほとんどのプロパティーは、 例えば、URL パターンに一致する要求された JSP ファイル、および JSP ファイルに include ディレクティブを使用して含めているすべてのファイルなど、変換単位全体に適用されます。 ただし、page-encoding プロパティーおよび is-xml プロパティーは例外で、URL パターンに一致する各 JSP ファイルに個別に適用されます。 WebSphere Application Server バージョン 8.0 より前の設定に動作を戻すには、属性を true に設定して、変換単位全体にこの 2 つのプロパティー値が適用されるようにします。trns

scratchdir

生成されたクラス・ファイルが作成されるディレクトリーを指定します。

システム・プロパティー com.ibm.websphere.servlet.temp.dir は、 サーバー全体をベースにした scratchdir オプションの設定に使用します。JSP エンジン scratchdir パラメーターは、システム・プロパティー com.ibm.websphere.servlet.temp.dir より優先されます。このパラメーターのデフォルトは profile_root/temp です。 このパラメーターでは Java ソースの再生成が必要です

トラブルの回避 (Avoid trouble) トラブルの回避 (Avoid trouble): JSP 一時ディレクトリーを構成一時ディレクトリーと同レベルまたは下に置くディレクトリー・パスは指定しないでください。構成一時ディレクトリーのデフォルト・ロケーションは、profile_home/config/temp です。

例えば、JSP 一時ディレクトリーのロケーションを profile_home/config/temp に変更するか、または JSP 一時ディレクトリーを profile_home/config/temp/temp の構成一時ディレクトリーの下に配置すると、処理エラーが発生します。

gotcha

trackDependencies

再ロードが使用可能にされている場合、trackDependencies は、 要求された JavaServer Pages ファイルの依存関係に対する変更と JSP ファイル自体に対する変更を JSP エンジンがトラッキングするかどうかを決定します。

JSP エンジンがトラッキングする依存関係は、以下のとおりです。
  1. JSP ファイル内に静的に組み込まれたファイル
  2. JSP ファイルで参照されるタグ・ファイル (JAR 内にあるタグ・ファイルを除く)
  3. JSP ファイルで参照される TLD ファイル (JAR 内にある TLD を除く)
デフォルトは false です。

useFullPackageNames

useFullPackageNamestrue の場合、 JSP エンジンは完全パッケージ名を使用して JSP クラスを生成およびロードします。

デフォルトでは、同じパッケージにあるすべての JSP クラスが生成されます。 (詳しくは、『生成された .java および .class ファイル用のパッケージおよびディレクトリー』トピックを参照してください)。JSP エンジンのクラス・ローダーは、すべて同じパッケージにあるとき、 JSP クラスをどのようにロードするかを把握しています。

同じパッケージにすべての JSP クラスを生成するというデフォルトのメソッドには、 より小さなファイル・システム・パスを生成するという利点があります。 完全パッケージ名には、jsp-file 属性を使用することなく、プリコンパイルした JSP クラス・ファイルの構成を web.xml ファイルのサーブレットとして使用可能にすることによって、単一クラス・ローダー、Web アプリケーションのクラス・ローダー、がすべてのこのような JSP クラスをロードするのに使用されるようになるという利点があります。同様に、JSP エンジンの構成属性 useFullPackageNames および disableJspRuntimeCompilation が両方とも true の場合、 JSP ファイルが web.xml ファイルでサーブレットとして構成されていなくても、 単一のクラス・ローダーを使用してすべての JSP クラスをロードします。

useFullPackageNamestrue に設定されている場合、バッチ・コンパイラーは Web モジュールの WEB-INF ディレクトリーに generated_web.xml ファイルを生成します。このファイルには、正常に変換され、コンパイルされた各 JSP ファイルのサーブレット構成情報が含まれます。 情報は、オプションで Web モジュールの web.xml ファイルにコピーすることができ、JSP ファイルは Web コンテナーによってサーブレットとしてロードされます。この方法で JSP ファイルがサーブレットとして構成されると、JSP ファイルが変更されても、 ランタイムで JSP ファイルが再ロードされることはありません。これは、JSP ファイルが通常のサーブレットとして扱われ、 それに対する要求は JSP エンジンを介して渡されないためです。 このパラメーターでは Java ソースの再生成が必要です

useImplicitTagLibs

JSP エンジンは、 JSP エンジンによって提供されるタグ・ライブラリーのタグ・ライブラリー接頭部として tsx および jsx を暗黙的に認識します。 tsx または jsx がカスタマーのタグ・ライブラリーの接頭部として使用される場合、 カスタマーのタグ・ライブラリーは暗黙のタグ・ライブラリーをオーバーライドします。 ただし、暗黙のタグ・ライブラリーは JSP エンジンによってキャッシュされます。 このパラメーターを明示的に false に設定すると、 エンジンは暗黙のタグ・ライブラリーをキャッシュせず、リソースを保存します。 このパラメーターのデフォルトは true です。

tsx タグのデフォルト URL は http://websphere.ibm.com/tags/tsx です。jsx タグのデフォルト URI は http://websphere.ibm.com/tags/jsx です。

デフォルト URI とは異なる URI を使用して、tsx または jsx タグ・ライブラリーの接頭部を定義する必要が生じることがあります。また、異なる URI を使用して、同じライブラリーの接頭部を定義する必要が生じることがあります。これらの 2 つの場合には、com.ibm.wsspi.jsp.allowtaglibprefixredefinition カスタム・プロパティーを設定して、変換エラーを回避できます。詳しくは、JavaServer Pages カスタム・プロパティーに関する資料を参照してください。

useInMemory

JSP エンジンがシステム・メモリー内の Java コードを変換し、コンパイルするように指定します。

このオプションが設定されていない場合、JSP エンジンでは以下のステップを実行する必要があります。
  1. 変換された Java ファイルをファイル・システムに書き込みます。
  2. ファイル・システムから Java ファイルをロードします。
  3. コードをクラス・ファイルにコンパイルします。
  4. クラスをファイル・システムに書き込みます。
  5. クラス・ファイルをクラス・ローダーにロードします。
トラブルの回避 (Avoid trouble) トラブルの回避 (Avoid trouble): .class ファイルおよび .java ファイルは、システム・ディスクには書き込まれません。プリコンパイル済みの JSP コードから JAR ファイルをデバッグまたは作成する場合、このオプションを使用不可にする必要があります。gotcha

useJikes

Java ソースのコンパイルに Jikes を使用するかどうかを指定します。

注: Jikes は WebSphere Application Server に同梱されていません。このパラメーターのデフォルトは false です。このパラメーターでは Java ソースの再生成が必要です

usePageTagPool

個々の JavaServer Pages ベースのカスタム・タグ・ハンドラーの再利用を有効または無効にします。このパラメーターのデフォルトは false です。このパラメーターでは Java ソースの再生成が必要です

useThreadTagPool

スレッド・レベルのタグ・ハンドラー・プーリングが使用されている場合、単一の Web モジュール内にあるすべての JSP ページにわたってカスタム・アクションが出現するたびに、個別の要求全体を通じてタグ・ハンドラーを再利用することができます。このパラメーターのデフォルトは false です。このパラメーターでは Java ソースの再生成が必要です

カスタム・タグ・ハンドラーの再利用を有効にすると、タグの再利用可能性に関するタグ・ハンドラー・コード内の問題が明らかになる場合があります。カスタム・タグ・ハンドラーは、通常、以下の 2 つを行う必要があります。
  • タグ・ハンドラーの release メソッドは、そのハンドラーの状態をリセットし、そのハンドラーが使用したすべての専用リソースを解放しなければなりません。 JSP エンジンは、タグ・ハンドラーがガーベッジ・コレクションされる前に、 release メソッドを確実に呼び出します。
  • doEndTag メソッドでは、 このインスタンスに関連付けられているすべてのインスタンス状態がリセットされなければなりません。

verbose

生成された Java ソース・コードのコンパイル時に、 コンパイラーが冗長出力を生成することを示します。 このパラメーターを true に設定すると、-verbose オプションが Java コンパイラーに渡されます。 このパラメーターのデフォルトは false です。このパラメーターでは Java ソースの再生成が必要です

カスタム・タグ・ハンドラーの再利用を有効にすると、タグの再利用可能性に関するタグ・ハンドラー・コード内の問題が明らかになる場合があります。カスタム・タグ・ハンドラーは、通常、以下の 2 つを行う必要があります。
  • タグ・ハンドラーの release メソッドは、そのハンドラーの状態をリセットし、そのハンドラーが使用したすべての専用リソースを解放しなければなりません。 JSP エンジンは、タグ・ハンドラーがガーベッジ・コレクションされる前に、 release メソッドを確実に呼び出します。
  • doEndTag メソッドでは、 このインスタンスに関連付けられているすべてのインスタンス状態がリセットされなければなりません。
    注意:
    ページまたはスレッドのタグ・プーリングを使用すると、例外が発生した場合に doEndTag メソッドが呼び出されません。クリアする必要があるサービス状態がある場合は、TryCatchFinally インターフェースを実装する必要があります。

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



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