パッケージ jakarta.ws.rs
アノテーション型 PathParam
@TargetSE({PARAMETERSE,METHODSE,FIELDSE}) @RetentionSE(RUNTIMESE) @DocumentedSE public @interface PathParam
URI テンプレートパラメーターまたはテンプレートパラメーターを含むパスセグメントの値を、リソースメソッドパラメーター、リソースクラスフィールド、リソースクラス Bean プロパティにバインドします。@Encoded
アノテーションを使用して無効にしない限り、値は URL デコードされます。デフォルト値は、@DefaultValue
アノテーションを使用して指定できます。アノテーション付きパラメーター、フィールド、プロパティの型は、次のいずれかである必要があります。PathSegment
である場合、値はパスの一致する部分の最後のセグメントになります。すべてのリクエストパスセグメントを取得する方法については、UriInfo
を参照してください。List<jakarta.ws.rs.core.PathSegment>
の場合、値は、指定されたテンプレートパラメーターに一致したパスセグメントに対応するPathSegment
のリストになります。すべてのリクエストパスセグメントを取得する方法については、UriInfo
を参照してください。- プリミティブ型であること。
- 単一の String 引数を受け入れるコンストラクターがあります。
- 単一の文字列引数を受け入れる
valueOf
またはfromString
という名前の静的メソッドがあります(たとえば、Integer.valueOf(String)
SE を参照)。 - 型の「文字列から」変換が可能な
ParamConverter
インスタンスを返すParamConverterProvider
JAX-RS 拡張 SPI の登録済み実装があります。
挿入された値は、パスパラメーターの(スコープに関して)最新の使用に対応します。例: クラスとサブリソースメソッドの両方に同じ URI テンプレートパラメーターを含む
@Path
アノテーションが付けられている場合、サブリソースメソッドパラメーターで@PathParam
を使用すると、メソッドの@Path
アノテーションで値が一致する URI テンプレートパラメーターがバインドされます。インジェクションはオブジェクトの作成時に発生するため、リソースクラスフィールドおよび Bean プロパティでのこのアノテーションの使用は、デフォルトのリクエストごとのリソースクラスライフサイクルでのみサポートされます。他のライフサイクルを使用するリソースクラスは、リソースメソッドパラメーターでのみこのアノテーションを使用する必要があります。
- 導入:
- 1.0
- 作成者:
- Paul Sandoz, Marc Hadley
- 関連事項:
Encoded
,DefaultValue
,PathSegment
,UriInfo
要素の詳細
value
StringSE value
アノテーション付きメソッドパラメーター、クラスフィールド、プロパティの値を初期化するためにその値が使用される URI テンプレートパラメーターの名前を定義します。テンプレートパラメーターの構文の説明については、Path.value()
を参照してください。E.g。アノテーション付きのクラス:
@Path("widgets/{id}")
は、引数に@PathParam("id")
アノテーションが付けられたメソッドにアノテーションを付けることができます。- 戻り値:
- リソース URI テンプレートのパラメーター名。