24.1 JAX-RS 1.1仕様のサポート範囲

ここでは,JAX-RS 1.1仕様のサポート範囲について説明します。JAX-RS 1.1仕様のサポート範囲を次の表に示します。

表24-1 JAX-RS 1.1仕様のサポート範囲

分類対応備考
大分類小分類
2Applicationビルトイン実装Application ServerのJAX-RS機能は,サーブレットベースのメカニズム(JAX-RS 1.1仕様の2.3.2項の最終段落に記述されています)をサポートしています。また,JAX-RS機能はデフォルトのビルトインApplication実装を提供しているので,RESTful Webサービスを実装する際にApplicationの実装は不要です(Applicationのカスタム実装はサポートしていません)。ビルトインApplication実装やデプロイについては,「3.5.1 WARファイルの構成」を参照してください。
カスタム実装×
3.1,3.3要求メソッド識別子ビルトイン実装Application ServerのJAX-RS機能は,JAX-RS 1.1仕様で定義されている次の標準の要求メソッド識別子をサポートしています。
  • GETアノテーション
  • POSTアノテーション
  • PUTアノテーション
  • DELETEアノテーション
  • HEADアノテーション
JAX-RS 1.1仕様でオプションとなっている要求メソッド識別子のカスタム実装はサポートしていません。
カスタム実装×
3.1ルートリソースクラスルートリソースクラスについては,「17.1.1 ルートリソースクラス」を参照してください。
3.1ルートリソースクラスのライフサイクルルートリソースクラスのライフサイクルについては,「17.1.1(1) ライフサイクル」を参照してください。
3.1.2ルートリソースクラスのコンストラクタパラメタへのインジェクションルートリソースクラスのコンストラクタパラメタへのインジェクションについては,「17.1.1(2) コンストラクタ」を参照してください。
インジェクトできる型や,DefaultValueアノテーションとの組み合わせについては,「17.1.4 パラメタ型」を参照してください。
3.2フィールドとbeanプロパティへのインジェクションフィールドとbeanプロパティへのインジェクションについては,「17.1.1(3) フィールドおよびbeanプロパティ」を参照してください。
インジェクトできる型や,DefaultValueアノテーションとの組み合わせについては,「17.1.4 パラメタ型」を参照してください。
3.3リソースメソッドリソースメソッドについては,「17.1.1(4) リソースメソッド」を参照してください。
3.3.2リソースメソッドのパラメタへのインジェクションリソースメソッドのパラメタへのインジェクションについては,「17.1.1(4)(b) パラメタのアノテーション」を参照してください。
インジェクトできる型や,DefaultValueアノテーションとの組み合わせについては,「17.1.4 パラメタ型」を参照してください。
3.3.2(1)HTTPリクエストのエンティティボディからエンティティパラメタへのマッピングエンティティパラメタについては,「17.1.1(4)(c) エンティティパラメタ」を参照してください。
3.3.3戻り値からHTTPレスポンスのエンティティボディへのマッピング戻り値については,「17.1.1(4)(d) 戻り値」を参照してください。
3.2,3.3.4例外のハンドリング例外については,「17.1.5 例外のマッピング」を参照してください。
3.3.5HEAD HTTPリクエストおよびOPTIONS HTTPリクエストの処理HEAD HTTPリクエストの処理については,「24.3.2(3) javax.ws.rs.HEADアノテーション」を参照してください。OPTIONS HTTPリクエストの処理については,「24.3.2(4) javax.ws.rs.OPTIONSアノテーション」を参照してください。
3.4,3.7.3URIテンプレートと正規表現URIテンプレートについては,「17.1.6 URIテンプレート」を参照してください。
3.4.1サブリソースメソッドサブリソースメソッドについては,「17.1.1(5) サブリソースメソッド」を参照してください。
3.4.1サブリソースロケータとサブリソースサブリソースロケータについては,「17.1.1(6) サブリソースロケータ」を参照してください。サブリソースクラスについては,「17.1.7 サブリソースクラス」を参照してください。
3.5メディアタイプの宣言メディアタイプの宣言については,「17.1.9 メディアタイプ宣言」を参照してください。
3.6アノテーションの継承アノテーションの継承については,「17.1.11 アノテーションの継承」を参照してください。
3.7HTTPリクエストからリソースメソッドへのマッチング
3.8HTTPレスポンスのメディアタイプの決定
4.2エンティティプロバイダ(メッセージボディリーダおよびライタ)ビルトイン実装Application ServerのJAX-RS機能は,ビルトインのエンティティプロバイダを提供しているので,RESTful Webサービスを実装する際にエンティティプロバイダの実装は不要です(エンティティプロバイダのカスタム実装はサポートしていません)。
ビルトインのエンティティプロバイダには,JAX-RS 1.1仕様でサポートが必須とされているエンティティプロバイダのほか,JAX-RS機能で追加にサポートするエンティティプロバイダが含まれます。ビルトインのエンティティプロバイダとサポートされる型については,「17.1.1(4)(c) エンティティパラメタ」を参照してください。
カスタム実装×
4.3コンテキストプロバイダ×コンテキストプロバイダを実装しなくても,Application ServerのJAX-RS機能はJAX-RS 1.1仕様の標準のコンテキストを適切に処理します。
4.4例外マッピングプロバイダ例外マッピングプロバイダについては,「17.2.2 例外マッピングプロバイダ」を参照してください。
5コンテキストApplication ServerのJAX-RS機能は標準のコンテキスト型をサポートしています。コンテキストについては,「24.4 コンテキスト」を参照してください。
5.2.1javax.ws.rs.core.Application×
5.2.2javax.ws.rs.core.UriInfojavax.ws.rs.core.UriInfoについては,「24.4.1 javax.ws.rs.core.UriInfo」を参照してください。
5.2.3javax.ws.rs.core.HttpHeadersjavax.ws.rs.core.HttpHeadersについては,「24.4.2 javax.ws.rs.core.HttpHeaders」を参照してください。
5.2.4javax.ws.rs.core.Requestjavax.ws.rs.core.Requestについては,「24.4.3 javax.ws.rs.core.Request」を参照してください。
5.2.5javax.ws.rs.core.SecurityContextjavax.ws.rs.core.SecurityContextについては,「24.4.4 javax.ws.rs.core.SecurityContext」を参照してください。
5.2.6javax.ws.rs.ext.Providersjavax.ws.rs.ext.Providersについては,「24.4.5 javax.ws.rs.core.ext.Providers」を参照してください。
6.1javax.servlet.ServletConfigjavax.servlet.ServletConfigについては,「24.4.6 javax.servlet.ServletConfig」を参照してください。
6.1javax.servlet.ServletContextjavax.servlet.ServletContextについては,「24.4.7 javax.servlet.ServletContext」を参照してください。
6.1javax.servlet.http.HttpServletRequestjavax.servlet.http.HttpServletRequestについては,「24.4.8 javax.servlet.http.HttpServletRequest」を参照してください。
6.1javax.servlet.http.HttpServletResponsejavax.servlet.http.HttpServletResponseについては,「24.4.9 javax.servlet.http.HttpServletResponse」を参照してください。
6.1サーブレットコンテナ(Webコンテナ)による実行環境JAX-RS機能は,サーブレットコンテナによるRESTful Webサービスの実行環境を提供しています。
1.4.2(2)(c) Application」も参照してください。
6.1サーブレット仕様で定義されている型のインジェクション次の項目も参照してください。
  • javax.servlet.ServletConfig
  • javax.servlet.ServletContext
  • javax.servlet.http.HttpServletRequest
  • javax.servlet.http.HttpServletResponse
6.1要求エンティティのストリーミング処理とメソッド内での応答のコミット×Application ServerのJAX-RS機能は,JAX-RS 1.1仕様の6.1節の後半で説明されている動作をサポートしていません。
6.2Java EEコンテナ(EJBコンテナ)による実行環境×
7ランタイムデリゲートApplication ServerのJAX-RS実装は,JAX-RS 1.1仕様のランタイムデリゲートのメカニズムに従って実装されています。
Apx.AアノテーションAPIについては,「24.2 APIのサポート範囲」を参照してください。
Apx.BHTTPヘッダ
JavaDocAPIAPIについては,「24.2 APIのサポート範囲」を参照してください。
(凡例)
○:対応しています。
×:対応していません。
-:該当しません。
注※
JAX-RS 1.1仕様の該当個所(章節項)を示します。