Hitachi

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


8.1 Servlet仕様およびJSP仕様で追加,変更された機能のサポート範囲

ここでは,Servlet仕様およびJSP仕様で追加,変更された機能の概要と,アプリケーションサーバでのサポート範囲を示します。

各バージョンのServlet仕様およびJSP仕様で追加,変更された機能をアプリケーションサーバで使用する場合の動作や注意事項は,8.2.4以降を参照してください。

Servlet 4.0で追加,変更された機能の概要とサポート範囲を次の表に示します。

表8‒1 Servlet 4.0の機能の概要とサポート範囲

項番

機能名

機能概要

サポート

1

web.xml(Servlet 4.0)

Servlet 4.0に対応したweb.xmlを使用できます。

2

HTTP/2

HTTP/2プロトコルの通信ができます。

3

Servlet Mapping API

サーブレット実行時のURLマッピングを取得できます。

4

デフォルトコンテキストパスの設定

web.xmlにデフォルトコンテキストパスを設定できます。

5

Webアプリケーション単位のデフォルト文字エンコーディングの設定

web.xmlやServletContextからデフォルト文字エンコードを設定できます。

6

セッションタイムアウトの設定

ServletContextからセッションタイムアウトを設定できます。

7

動的JSP定義

APIでJSPを定義できます。

8

HTTP Trailer

HTTP Trailerを使用できます。

9

APIのエンハンス

Servlet 4.0で新規に追加または変更となったAPIが使用できます。

(凡例)

○:サポートする

Servlet 3.1で追加,変更された機能の概要とサポート範囲を次の表に示します。

表8‒2 Servlet 3.1の機能の概要とサポート範囲

項番

機能名

機能概要

サポート

1

web.xml(Servlet 3.1)

Servlet 3.1に対応したweb.xmlを使用できます。

※1

2

非同期I/O

ReadListener/WriteListenerインタフェースを用いて非同期I/Oを実装できます。

3

Upgradeリクエスト

WebSocketプロトコルなどへのUpgradeリクエストに対応できます。

4

セキュリティエンハンス

  • セキュリティロールのロール名に"**"を指定できます。

  • リダイレクト成功時にステータスコード303が利用できます。

  • カバーされていないHTTPメソッドを拒否する設定ができます。

×

5

APIのエンハンス

新規に追加または変更となったAPIが使用できます。

※2

(凡例)

○:サポートする ×:サポートしない △:一部サポートする

注※1

Servlet 3.1に対応したweb.xmlは読み込めますが,Servlet 3.1で追加されたタグについては無視されます。

注※2

サポートする機能のAPIは使用できますが,サポートしない機能のAPIは使用できません。Servlet 3.1のAPIについては,「8.2.4(9) APIについて」を参照してください。

Servlet 3.0で追加,変更された機能の概要とサポート範囲を次の表に示します。

表8‒3 Servlet 3.0の機能の概要とサポート範囲

項番

機能名

機能概要

サポート

1

web.xml(Servlet 3.0)と新規アノテーション

Servlet 3.0に対応したweb.xmlを使用できます。

アノテーションでサーブレットを定義できます(web.xmlを省略できます)。

web-fragment.xmlを使用できます。

×※1

2

動的サーブレット定義

APIでサーブレット,フィルタ,またはリスナを定義できます。

3

ファイルアップロード

content-typeがmultipart/form-dataのリクエストを処理できます。

4

静的リソースの配置

JARファイルのMETA-INF/resourcesに静的リソースやJSPを配置できます。

5

セキュリティエンハンス

  • アノテーションでセキュリティ設定ができます。

  • 認証用のAPIが使えます。

6

非同期サーブレット

リクエストを受け付けたスレッドとは別のスレッドで,リクエスト処理やレスポンス生成ができます。

7

Servlet仕様のその他の変更

CookieにHttpOnly属性を付けられます。

HTTPセッションのセッションIDを示すHTTP Cookieの名前を変更できます。

HTTPダイジェスト認証が使えます。

×※2

ServletRequestの属性としてSSL Session IDが取得できます。

×※3

8

JSP仕様の変更

デフォルトのコンテンツタイプやバッファサイズなどをweb.xmlで指定できます。

9

ELパラメタ付きメソッド

パラメタ付きメソッドを呼び出せます。

※4

10

APIのエンハンス

新規に追加または変更となったAPIが使用できます。

※5

(凡例)

○:サポートする ×:サポートしない △:一部サポートする

注※1

web-fragment.xmlがWebアプリケーションに含まれていた場合,無視されます。

注※2

DDでダイジェスト認証が設定された場合,動作は保証されません。

注※3

ServletRequestクラスで,「javax.servlet.request.ssl_session_id」を引数に指定してgetAttributeメソッドを呼び出すと,常にnullが返ります。

注※4

JSP 2.1仕様または2.0仕様のELの場合,JSP 2.2以降のEL式は使用できません。JSP 2.2以降のELのAPIを使用した場合,チェックされないため動作は保証されません。

注※5

サポートする機能のAPIは使用できますが,サポートしない機能のAPIは使用できません。Servlet 3.0のAPIについては,「8.2.4(9) APIについて」を参照してください。