パッケージ jakarta.ws.rs.core
インターフェース UriInfo
public interface UriInfoアプリケーションへのアクセスを提供し、URI 情報をリクエストする注入可能なインターフェース。相対 URI は、アプリケーションのベース URI を基準にしています。getBaseUri()を参照してください。すべてのメソッドは、リクエストのスコープ外で(プロバイダーコンストラクターなどから)呼び出されると、
java.lang.IllegalStateExceptionをスローします。- 導入:
- 1.0
- 作成者:
- Paul Sandoz, Marc Hadley
- 関連事項:
Context
方法の概要
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 URISEgetAbsolutePath()リクエストの絶対パスを取得します。UriBuildergetAbsolutePathBuilder()リクエストの絶対パスを UriBuilder の形式で取得します。URISEgetBaseUri()アプリケーションのベース URI を取得します。UriBuildergetBaseUriBuilder()アプリケーションのベース URI を UriBuilder の形式で取得します。ListSE<ObjectSE>getMatchedResources()現在一致しているリソースクラスインスタンスの読み取り専用リストを取得します。ListSE<StringSE>getMatchedURIs()一致したリソースの URI の読み取り専用リストを取得します。ListSE<StringSE>getMatchedURIs(boolean decode)一致したリソースの URI の読み取り専用リストを取得します。StringSEgetPath()現在のリクエストのベース URI からの相対パスを文字列として取得します。StringSEgetPath(boolean decode)現在のリクエストのベース URI からの相対パスを文字列として取得します。MultivaluedMap<StringSE,StringSE>getPathParameters()埋め込まれた URI テンプレートパラメーターの値を取得します。MultivaluedMap<StringSE,StringSE>getPathParameters(boolean decode)埋め込まれた URI テンプレートパラメーターの値を取得します。ListSE<PathSegment>getPathSegments()PathSegmentのリストとして、ベース URI に対する現在のリクエストのパスを取得します。ListSE<PathSegment>getPathSegments(boolean decode)PathSegmentのリストとして、ベース URI に対する現在のリクエストのパスを取得します。MultivaluedMap<StringSE,StringSE>getQueryParameters()現在のリクエストの URI クエリパラメーターを取得します。MultivaluedMap<StringSE,StringSE>getQueryParameters(boolean decode)現在のリクエストの URI クエリパラメーターを取得します。URISEgetRequestUri()クエリパラメーターを含む絶対リクエスト URI を取得します。UriBuildergetRequestUriBuilder()UriBuilder の形式で絶対リクエスト URI を取得します。URISErelativize(URISE uri)現在のリクエスト URI に関して URI を相対化します。URISEresolve(URISE uri)アプリケーションのベース URI に関連する相対 URI を解決します。
メソッドの詳細
getPath
StringSE getPath()
現在のリクエストのベース URI からの相対パスを文字列として取得します。エスケープされたオクテットのすべてのシーケンスがデコードされます。これはgetPath(true)と同等です。- 戻り値:
- 相対 URI パス。
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。
getPath
StringSE getPath(boolean decode)
現在のリクエストのベース URI からの相対パスを文字列として取得します。- パラメーター:
decode- エスケープされたオクテットのシーケンスがデコードされるか(true)、デコードされないか(false)を制御します。- 戻り値:
- 相対 URI パス
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。
getPathSegments
ListSE<PathSegment> getPathSegments()
PathSegmentのリストとして、ベース URI に対する現在のリクエストのパスを取得します。このメソッドは、パスを解析する必要がある場合、特にマトリックスパラメーターがパスに存在する可能性がある場合に役立ちます。パスセグメントのエスケープされたオクテットとマトリックスパラメーター値のすべてのシーケンスがデコードされます。これはgetPathSegments(true)と同等です。- 戻り値:
PathSegmentの変更不可能なリスト。各パスセグメントのマトリックスパラメーターマップも変更できません。- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合- 関連事項:
PathSegment, マトリックス URI
getPathSegments
ListSE<PathSegment> getPathSegments(boolean decode)
PathSegmentのリストとして、ベース URI に対する現在のリクエストのパスを取得します。このメソッドは、パスを解析する必要がある場合、特にマトリックスパラメーターがパスに存在する可能性がある場合に役立ちます。- パラメーター:
decode- パスセグメントのエスケープされたオクテットのシーケンスとマトリックスパラメーター値がデコードされるか(true)、デコードされないか(false)を制御します。- 戻り値:
PathSegmentの変更不可能なリスト。各パスセグメントのマトリックスパラメーターマップも変更できません。- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合- 関連事項:
PathSegment, マトリックス URI
getRequestUri
URISE getRequestUri()
クエリパラメーターを含む絶対リクエスト URI を取得します。- 戻り値:
- 絶対リクエスト URI
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合
getRequestUriBuilder
UriBuilder getRequestUriBuilder()
UriBuilder の形式で絶対リクエスト URI を取得します。- 戻り値:
- 絶対リクエスト URI で初期化された UriBuilder。
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。
getAbsolutePath
URISE getAbsolutePath()
リクエストの絶対パスを取得します。これには、パスの前にあるすべて(ホスト、ポートなど)が含まれますが、クエリパラメーターは含まれません。これはuriInfo.getBaseUri().resolve(uriInfo.getPath(false))のショートカットです。- 戻り値:
- リクエストの絶対パス。
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。
getAbsolutePathBuilder
UriBuilder getAbsolutePathBuilder()
UriBuilder の形式でリクエストの絶対パスを取得します。これには、パスの前にあるすべて(ホスト、ポートなど)が含まれますが、クエリパラメーターは含まれません。- 戻り値:
- リクエストの絶対パスで初期化された UriBuilder。
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。
getBaseUri
URISE getBaseUri()
アプリケーションのベース URI を取得します。ルートリソースクラスの URI はすべて、このベース URI に関連しています。- 戻り値:
- アプリケーションのベース URI。
getBaseUriBuilder
UriBuilder getBaseUriBuilder()
アプリケーションのベース URI を UriBuilder の形式で取得します。- 戻り値:
- アプリケーションのベース URI で初期化された UriBuilder。
getPathParameters
MultivaluedMap<StringSE,StringSE> getPathParameters()
埋め込まれた URI テンプレートパラメーターの値を取得します。エスケープされたオクテットのすべてのシーケンスがデコードされます。これはgetPathParameters(true)と同等です。- 戻り値:
- パラメーター名と値の変更不可能なマップ。
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。- 関連事項:
Path,PathParam
getPathParameters
MultivaluedMap<StringSE,StringSE> getPathParameters(boolean decode)
埋め込まれた URI テンプレートパラメーターの値を取得します。- パラメーター:
decode- エスケープされたオクテットのシーケンスがデコードされるか(true)、デコードされないか(false)を制御します。- 戻り値:
- パラメーター名と値の変更不可能なマップ
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。- 関連事項:
Path,PathParam
getQueryParameters
MultivaluedMap<StringSE,StringSE> getQueryParameters()
現在のリクエストの URI クエリパラメーターを取得します。マップキーは、エスケープ文字がデコードされたクエリパラメーターの名前です。パラメーター名と値のエスケープされたオクテットのすべてのシーケンスがデコードされます。これはgetQueryParameters(true)と同等です。- 戻り値:
- クエリパラメーターの名前と値の変更不可能なマップ。
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。
getQueryParameters
MultivaluedMap<StringSE,StringSE> getQueryParameters(boolean decode)
現在のリクエストの URI クエリパラメーターを取得します。マップキーは、エスケープ文字がデコードされたクエリパラメーターの名前です。- パラメーター:
decode- パラメーター名と値のエスケープされたオクテットのシーケンスをデコードするか(true)、デコードしないか(false)を制御します。- 戻り値:
- クエリパラメーターの名前と値の変更不可能なマップ。
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。
getMatchedURIs
ListSE<StringSE> getMatchedURIs()
一致したリソースの URI の読み取り専用リストを取得します。各エントリは、リソースクラス、サブリソースメソッド、サブリソースロケーターに一致する相対 URI です。エスケープされたオクテットのすべてのシーケンスがデコードされます。これはgetMatchedURIs(true)と同等です。エントリにはクエリパラメーターは含まれませんが、リクエスト URI に存在する場合はマトリックスパラメーターが含まれます。エントリは、現在のリソース URI を最初に、逆リクエスト URI の一致順序で並べられます。例: 次のリソースクラスが与えられます。@Path("foo") public class FooResource { @GET public String getFoo() {...} @Path("bar") public BarResource getBarResource() {...} } public class BarResource { @GET public String getBar() {...} }リクエスト uri に基づいてこのメソッドによって返される値と、メソッドの呼び出し元は次のとおりです。
リクエストのマッチングの前にメソッドが呼び出された場合(たとえば、事前マッチングフィルターから)、メソッドは空のリストを返します。リクエストからの一致した URI リクエスト から呼び出された 値 /foo を入手 FooResource.getFoo foo /foo/bar を入手 FooResource.getBarResource foo/bar、foo /foo/bar を入手 BarResource.getBar foo/bar、foo - 戻り値:
- 一致したリソースの URI パスの読み取り専用リスト。
getMatchedURIs
ListSE<StringSE> getMatchedURIs(boolean decode)
一致したリソースの URI の読み取り専用リストを取得します。各エントリは、リソースクラス、サブリソースメソッド、サブリソースロケーターに一致する相対 URI です。エントリにはクエリパラメーターは含まれませんが、リクエスト URI に存在する場合はマトリックスパラメーターが含まれます。エントリは、現在のリソース URI を最初に、逆リクエスト URI の一致順序で並べられます。例については、getMatchedURIs()を参照してください。リクエストのマッチングの前にメソッドが呼び出された場合(たとえば、事前マッチングフィルターから)、メソッドは空のリストを返します。- パラメーター:
decode- エスケープされたオクテットのシーケンスがデコードされるか(true)、デコードされないか(false)を制御します。- 戻り値:
- 一致したリソースの URI パスの読み取り専用リスト。
getMatchedResources
ListSE<ObjectSE> getMatchedResources()
現在一致しているリソースクラスインスタンスの読み取り専用リストを取得します。各エントリは、直接、またはサブリソースメソッドまたはサブリソースロケーターを介してリクエスト URI に一致したリソースクラスインスタンスです。エントリは、現在のリソースを最初にして、逆リクエスト URI の一致順序に従って順序付けられます。例: 次のリソースクラスが与えられます。@Path("foo") public class FooResource { @GET public String getFoo() {...} @Path("bar") public BarResource getBarResource() {...} } public class BarResource { @GET public String getBar() {...} }リクエスト uri に基づいてこのメソッドによって返される値と、メソッドの呼び出し元は次のとおりです。
リクエストのマッチングの前にメソッドが呼び出された場合(たとえば、事前マッチングフィルターから)、メソッドは空のリストを返します。リクエストからの一致したリソース リクエスト から呼び出された 値 /foo を入手 FooResource.getFoo FooResource /foo/bar を入手 FooResource.getBarResource FooResource /foo/bar を入手 BarResource.getBar BarResource, FooResource - 戻り値:
- 一致したリソースクラスインスタンスの読み取り専用リスト。
resolve
URISE resolve(URISE uri)
アプリケーションのベース URI に関して相対 URI を解決します。このメソッドによって返される解決された URI は正規化されます。指定された URI がすでに解決されている場合は、それが返されます。- パラメーター:
uri- アプリケーションのベース URI に対して解決する URI。- 戻り値:
- 新しく解決された URI、またはすでに解決されている場合は提供された URI。
- 導入:
- 2.0
relativize
URISE relativize(URISE uri)
現在のリクエスト URI を基準にして URI を相対化します。相対化は次のように機能します。- 相対化する URI がすでに相対的である場合、最初に
resolve(java.net.URI)を使用して解決されます。 - 結果の URI は、現在のリクエスト URI に関して相対化されます。2 つの URI がプレフィックスを共有していない場合、手順 1 で計算された URI が返されます。
例(ベース URI
http://example.com:8080/app/root/の場合):
リクエスト URI :http://example.com:8080/app/root/a/b/c/resource.html
提供された URI :a/b/c/d/file.txt
返された URI :d/file.txt
リクエスト URI :http://example.com:8080/app/root/a/b/c/resource.html
提供された URI :http://example2.com:9090/app2/root2/a/d/file.txt
返された URI :http://example2.com:9090/app2/root2/a/d/file.txt2 番目の例では、指定された URI が絶対的であり、それとリクエスト URI の間に共通のプレフィックスがない場合に返されます。
- パラメーター:
uri- リクエスト URI に対して相対化する URI。- 戻り値:
- 新しく相対化された URI。
- 例外:
IllegalStateExceptionSE- リクエストの範囲外で呼び出された場合。- 導入:
- 2.0
- 相対化する URI がすでに相対的である場合、最初に