Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)


8.2.7 JSP 2.2仕様およびJSP 2.3仕様に関する注意事項

JSP 2.2仕様およびJSP 2.3仕様に関する注意事項を示します。

〈この項の構成〉

(1) JSPのコンパイルエラーについて

11-00以前のバージョンでは,JSP 2.2で追加されたタグに関しては無視していましたが,11-10以降のバージョンでは,JSP 2.2で追加されたタグをサポートします。そのため,タグの指定内容に問題がある場合にはJSPのコンパイルに失敗することがあります。

JSP 2.2仕様およびJSP 2.3仕様では処理が追加になっているため,メソッドの処理内容が多いとコンパイル時にエラーとなるおそれがあります。エラーとなった場合は,JSPの処理をメソッド化して分けて1メソッドの処理内容を少なくしてください。

(2) 11-00以前のバージョンで作成したWebアプリケーションのバージョンが,3.0または3.1の場合のJSPの実行について

11-00以前のバージョンでは,Webアプリケーションのバージョンが3.0または3.1の場合,JSPのバージョンは2.1としてコンパイルしていました。11-10以降のバージョンの推奨モードでは,Webアプリケーションのバージョンが3.0または3.1の場合のJSPのバージョンは2.2または2.3となります。ただし,11-00以前のバージョンの環境で,事前コンパイル結果が存在する場合だけ,Webアプリケーションのバージョンが3.0または3.1であってもJSPのバージョンは2.1のままとなります。

(3) JSP 2.2でのbean取得時の排他制御

jsp:useBean利用時の排他制御についての動作を次に示します。

表8‒24 jsp:useBean利用時の排他制御

Webアプリケーションのバージョン

内容

3.0以降

Application ScopeおよびSessionScopeの場合は,beanの取得および生成時にスコープごとの排他制御を実施します。

2.5以前

すべてのスコープで,beanの取得および生成時にスコープごとの排他制御を実施します。

(4) JSP 2.3でのHTTPメソッドに対するJSPページの出力

HTTPメソッドに対するJSPページの出力についての動作を次に示します。

表8‒25 HTTPメソッドに対するJSPページの出力

Webアプリケーションのバージョン

内容

3.1以降

HTTPメソッドのGET,POST,HEAD,およびOPTIONに対してだけJSPページを出力します。

GET,POST,HEAD,およびOPTION以外のHTTPメソッドに対しては「405 Method Not Allowed」を返します。

3.0以前

すべてのHTTPメソッドに対してJSPページを出力します。

(5) インポートしたパッケージ・クラス・staticフィールドのEL式使用について

JSPでEL3.0を利用する場合に,pageディレクティブやtagディレクティブでインポートしたパッケージ・クラスを,ImportHandlerでインポートしたパッケージ・クラスとしてEL式で使用できます。

ただし,staticインポートは適用されないため,pageディレクティブやtagディレクティブを用いたstaticインポート後にEL式にクラス名なしのstaticフィールドを記述しても使用できません。

使用できる例,使用できない例を次に示します。

使用できる例
<%@ page import="com.FooClass" %>
 
(中略)
 
${FooClass.FOO_VALUE}
使用できない例
<%@ page import="static com.FooClass.FOO_VALUE" %>
 
(中略)
 
${FOO_VALUE}