パッケージ 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
    • 必須定数のサマリー

      必須要素  
      修飾子と型 必須要素 説明
      StringSEvalue
      アノテーション付きメソッドパラメーター、クラスフィールド、プロパティの値を初期化するためにその値が使用される URI テンプレートパラメーターの名前を定義します。
    • 要素の詳細

      • value

        StringSE value
        アノテーション付きメソッドパラメーター、クラスフィールド、プロパティの値を初期化するためにその値が使用される URI テンプレートパラメーターの名前を定義します。テンプレートパラメーターの構文の説明については、Path.value() を参照してください。

        E.g。アノテーション付きのクラス: @Path("widgets/{id}") は、引数に @PathParam("id") アノテーションが付けられたメソッドにアノテーションを付けることができます。

        戻り値:
        リソース URI テンプレートのパラメーター名。