インターフェース UriInfo
getBaseUri()
を参照してください。 すべてのメソッドは、リクエストのスコープ外で(プロバイダーコンストラクターなどから)呼び出されると、java.lang.IllegalStateException
をスローします。
- 導入:
- 1.0
- 作成者:
- Paul Sandoz, Marc Hadley
- 関連事項:
メソッドのサマリー
修飾子と型メソッド説明リクエストの絶対パスを取得します。リクエストの絶対パスを UriBuilder の形式で取得します。アプリケーションのベース URI を取得します。アプリケーションのベース URI を UriBuilder の形式で取得します。現在一致しているリソースクラスインスタンスの読み取り専用リストを取得します。現在のリクエストの URI に一致するすべてのPaths
(ApplicationPath
を含む) を含む URI テンプレートを取得します。一致したリソースの URI の読み取り専用リストを取得します。getMatchedURIs
(boolean decode) 一致したリソースの URI の読み取り専用リストを取得します。getPath()
現在のリクエストのベース URI からの相対パスを文字列として取得します。getPath
(boolean decode) 現在のリクエストのベース URI からの相対パスを文字列として取得します。埋め込まれた URI テンプレートパラメーターの値を取得します。getPathParameters
(boolean decode) 埋め込まれた URI テンプレートパラメーターの値を取得します。PathSegment
のリストとして、ベース URI に対する現在のリクエストのパスを取得します。getPathSegments
(boolean decode) PathSegment
のリストとして、ベース URI に対する現在のリクエストのパスを取得します。現在のリクエストの URI クエリパラメーターを取得します。getQueryParameters
(boolean decode) 現在のリクエストの URI クエリパラメーターを取得します。クエリパラメーターを含む絶対リクエスト URI を取得します。UriBuilder の形式で絶対リクエスト URI を取得します。relativize
(URISE uri) 現在のリクエスト URI に関して URI を相対化します。アプリケーションのベース URI に関連する相対 URI を解決します。
メソッドの詳細
getPath
StringSE getPath()現在のリクエストのベース URI からの相対パスを文字列として取得します。エスケープされたオクテットのすべてのシーケンスがデコードされます。これはgetPath(true)
と同等です。- 戻り値:
- 相対 URI パス。
- 例外:
IllegalStateExceptionSE
- リクエストの範囲外で呼び出された場合。
getPath
現在のリクエストのベース URI からの相対パスを文字列として取得します。- パラメーター:
decode
- エスケープされたオクテットのシーケンスがデコードされるか(true
)、デコードされないか(false
)を制御します。- 戻り値:
- 相対 URI パス
- 例外:
IllegalStateExceptionSE
- リクエストの範囲外で呼び出された場合。
getPathSegments
ListSE<PathSegment> getPathSegments()PathSegment
のリストとして、ベース URI に対する現在のリクエストのパスを取得します。このメソッドは、パスを解析する必要がある場合、特にマトリックスパラメーターがパスに存在する可能性がある場合に役立ちます。パスセグメントのエスケープされたオクテットとマトリックスパラメーター値のすべてのシーケンスがデコードされます。これはgetPathSegments(true)
と同等です。- 戻り値:
PathSegment
の変更不可能なリスト。各パスセグメントのマトリックスパラメーターマップも変更できません。- 例外:
IllegalStateExceptionSE
- リクエストの範囲外で呼び出された場合- 関連事項:
getPathSegments
PathSegment
のリストとして、ベース URI に対する現在のリクエストのパスを取得します。このメソッドは、パスを解析する必要がある場合、特にマトリックスパラメーターがパスに存在する可能性がある場合に役立ちます。- パラメーター:
decode
- パスセグメントのエスケープされたオクテットのシーケンスとマトリックスパラメーター値がデコードされるか(true
)、デコードされないか(false
)を制御します。- 戻り値:
PathSegment
の変更不可能なリスト。各パスセグメントのマトリックスパラメーターマップも変更できません。- 例外:
IllegalStateExceptionSE
- リクエストの範囲外で呼び出された場合- 関連事項:
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
- リクエストの範囲外で呼び出された場合。- 関連事項:
getPathParameters
埋め込まれた URI テンプレートパラメーターの値を取得します。- パラメーター:
decode
- エスケープされたオクテットのシーケンスがデコードされるか(true
)、デコードされないか(false
)を制御します。- 戻り値:
- パラメーター名と値の変更不可能なマップ
- 例外:
IllegalStateExceptionSE
- リクエストの範囲外で呼び出された場合。- 関連事項:
getQueryParameters
MultivaluedMap<StringSE,StringSE> getQueryParameters()現在のリクエストの URI クエリパラメーターを取得します。マップキーは、エスケープ文字がデコードされたクエリパラメーターの名前です。パラメーター名と値のエスケープされたオクテットのすべてのシーケンスがデコードされます。これはgetQueryParameters(true)
と同等です。- 戻り値:
- クエリパラメーターの名前と値の変更不可能なマップ。
- 例外:
IllegalStateExceptionSE
- リクエストの範囲外で呼び出された場合。
getQueryParameters
現在のリクエストの URI クエリパラメーターを取得します。マップキーは、エスケープ文字がデコードされたクエリパラメーターの名前です。- パラメーター:
decode
- パラメーター名と値のエスケープされたオクテットのシーケンスをデコードするか(true
)、デコードしないか(false
)を制御します。- 戻り値:
- クエリパラメーターの名前と値の変更不可能なマップ。
- 例外:
IllegalStateExceptionSE
- リクエストの範囲外で呼び出された場合。
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 パスの読み取り専用リスト。
getMatchedResourceTemplate
StringSE getMatchedResourceTemplate()現在のリクエストの URI に一致するすべての
Paths
(ApplicationPath
を含む) を含む URI テンプレートを取得します。リソースクラス、サブリソースメソッド、またはサブリソースロケーターを一致させるために使用される各
Path
値は、1 つのString
値に連結されます。テンプレートにはクエリパラメーターは含まれませんが、リクエスト URI に存在する場合はマトリックスパラメーターが含まれます。連結はリクエスト URI の一致順序で行われ、ApplicationPath
値が最初で現在のリソース URI が最後になります。たとえば、次のリソースクラスがあるとします。@Path("foo") public class FooResource { @GET @Path("{foo:[f-z][a-z]*}") public String getFoo() {...} @Path("{bar:[b-e][a-z]*}") public BarResource getBarResource() {...} } public class BarResource { @GET @Path("{id}{id:[0-9]}") public String getBar() {...} }
リクエスト uri に基づいてこのメソッドによって返される値と、メソッドの呼び出し元は次のとおりです。
メソッドがリクエストのマッチング前に呼び出された場合(事前マッチングフィルターなど)、メソッドは空の文字列を返します。リクエストからの一致した URI リクエスト から呼び出された 値 /foo を入手 FooResource.getFoo /foo/{foo:[f-z][a-z]*} /foo/bar を入手 FooResource.getBarResource /foo/{bar:[b-e][a-z]*} /foo/bar/id0 を入手 BarResource.getBar /foo/{bar:[b-e][a-z]*}/{id}{id:[0-9]} - 戻り値:
Path
テンプレートの連結された文字列。
getMatchedURIs
一致したリソースの URI の読み取り専用リストを取得します。各エントリは、リソースクラス、サブリソースメソッド、サブリソースロケーターに一致する相対 URI です。エントリにはクエリパラメーターは含まれませんが、リクエスト URI に存在する場合はマトリックスパラメーターが含まれます。エントリは、現在のリソース URI を最初に、逆リクエスト URI の一致順序で並べられます。例については、getMatchedURIs()
を参照してください。リクエストのマッチングの前にメソッドが呼び出された場合(たとえば、事前マッチングフィルターから)、メソッドは空のリストを返します。- パラメーター:
decode
- エスケープされたオクテットのシーケンスがデコードされるか(true
)、デコードされないか(false
)を制御します。- 戻り値:
- 一致したリソースの URI パスの読み取り専用リスト。
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
アプリケーションのベース URI に関して相対 URI を解決します。このメソッドによって返される解決された URI は正規化されます。指定された URI がすでに解決されている場合は、それが返されます。- パラメーター:
uri
- アプリケーションのベース URI に対して解決する URI。- 戻り値:
- 新しく解決された URI、またはすでに解決されている場合は提供された URI。
- 導入:
- 2.0
relativize
現在のリクエスト 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.txt
2 番目の例では、指定された URI が絶対的であり、それとリクエスト URI の間に共通のプレフィックスがない場合に返されます。
- パラメーター:
uri
- リクエスト URI に対して相対化する URI。- 戻り値:
- 新しく相対化された URI。
- 例外:
IllegalStateExceptionSE
- リクエストの範囲外で呼び出された場合。- 導入:
- 2.0
- 相対化する URI がすでに相対的である場合、最初に