public class RequestContext extends ObjectSE
ビューの説明、および JSP の "useBean" タグ、JSP スクリプトレット、JSTL EL などでの使用に適しています。FreeMarker テンプレートのように、サーブレットリクエストにアクセスできないビューに必要です。
手動でインスタンス化するか、AbstractView の "requestContextAttribute" プロパティを介してモデル属性としてビューに自動的に公開できます。
ルート WebApplicationContext にアクセスし、ロケール(HttpServletRequest のプライマリロケール)に適切なフォールバックを使用して、DispatcherServlet リクエスト以外でも機能します。
DispatcherServlet
, AbstractView.setRequestContextAttribute(java.lang.String)
, UrlBasedViewResolver.setRequestContextAttribute(java.lang.String)
修飾子と型 | フィールドと説明 |
---|---|
static StringSE | DEFAULT_THEME_NAME RequestContext が ThemeResolver を見つけられない場合に使用されるデフォルトのテーマ名。 |
protected static boolean | jstlPresent |
static StringSE | WEB_APPLICATION_CONTEXT_ATTRIBUTE RequestContext を使用するための現在の Web アプリケーションコンテキストを保持するリクエスト属性。 |
コンストラクターと説明 |
---|
RequestContext(HttpServletRequestEE request) エラー検索のリクエスト属性を使用して、指定されたリクエストの新しい RequestContext を作成します。 |
RequestContext(HttpServletRequestEE request, HttpServletResponseEE response) エラー検索のリクエスト属性を使用して、指定されたリクエストの新しい RequestContext を作成します。 |
RequestContext(HttpServletRequestEE request, HttpServletResponseEE response, ServletContextEE servletContext, MapSE<StringSE, ObjectSE> model) エラーを取得するために指定されたモデル属性を使用して、指定されたリクエストに対して新しい RequestContext を作成します。 |
RequestContext(HttpServletRequestEE request, MapSE<StringSE, ObjectSE> model) エラーを取得するために指定されたモデル属性を使用して、指定されたリクエストに対して新しい RequestContext を作成します。 |
RequestContext(HttpServletRequestEE request, ServletContextEE servletContext) エラー検索のリクエスト属性を使用して、指定されたリクエストの新しい RequestContext を作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
void | changeLocale(LocaleSE locale) 現在のロケールを指定されたロケールに変更し、構成された LocaleResolver を通じて新しいロケールを保存します。 |
void | changeLocale(LocaleSE locale, TimeZoneSE timeZone) 現在のロケールを指定されたロケールとタイムゾーンコンテキストに変更し、構成された LocaleResolver を通じて新しいロケールコンテキストを保存します。 |
void | changeTheme(StringSE themeName) 現在のテーマを名前で指定されたテーマに変更し、構成された ThemeResolver を通じて新しいテーマ名を保存します。 |
void | changeTheme(Theme theme) 現在のテーマを指定されたテーマに変更し、構成された ThemeResolver を通じて新しいテーマ名を保存します。 |
BindStatus | getBindStatus(StringSE path) "defaultHtmlEscape" 設定を使用して、指定されたバインドオブジェクトの BindStatus を作成します。 |
BindStatus | getBindStatus(StringSE path, boolean htmlEscape) "defaultHtmlEscape" 設定を使用して、指定されたバインドオブジェクトの BindStatus を作成します。 |
StringSE | getContextPath() 元のリクエストのコンテキストパス、つまり現在の Web アプリケーションを示すパスを返します。 |
StringSE | getContextUrl(StringSE relativeUrl) 指定された相対 URL のコンテキスト認識 URl を返します。 |
StringSE | getContextUrl(StringSE relativeUrl, MapSE<StringSE,?> params) プレースホルダー(中括弧 {} 付きの名前付きキー)を使用して、指定された相対 URL のコンテキスト認識 URl を返します。 |
BooleanSE | getDefaultHtmlEscape() デフォルトが指定されていない場合と明示的な値を区別して、デフォルトの HTML エスケープ設定を返します。 |
Errors | getErrors(StringSE name) "defaultHtmlEscape" 設定を使用して、指定されたバインドオブジェクトの Errors インスタンスを取得します。 |
Errors | getErrors(StringSE name, boolean htmlEscape) 指定されたバインドオブジェクトの Errors インスタンスを取得します。 |
protected LocaleSE | getFallbackLocale() このコンテキストのフォールバックロケールを決定します。 |
protected Theme | getFallbackTheme() このコンテキストのフォールバックテーマを決定します。 |
protected TimeZoneSE | getFallbackTimeZone() このコンテキストのフォールバックタイムゾーンを決定します。 |
LocaleSE | getLocale() 現在のロケールを返します(リクエストロケールにフォールバックします。 null は決してありません)。 |
StringSE | getMessage(MessageSourceResolvable resolvable) 指定された MessageSourceResolvable を取得します(例: |
StringSE | getMessage(MessageSourceResolvable resolvable, boolean htmlEscape) 指定された MessageSourceResolvable を取得します(例: |
StringSE | getMessage(StringSE code) "defaultHtmlEscape" 設定を使用して、指定されたコードのメッセージを取得します。 |
StringSE | getMessage(StringSE code, ListSE<?> args) "defaultHtmlEscape" 設定を使用して、指定されたコードのメッセージを取得します。 |
StringSE | getMessage(StringSE code, ListSE<?> args, StringSE defaultMessage) "defaultHtmlEscape" 設定を使用して、指定されたコードのメッセージを取得します。 |
StringSE | getMessage(StringSE code, ObjectSE[] args) "defaultHtmlEscape" 設定を使用して、指定されたコードのメッセージを取得します。 |
StringSE | getMessage(StringSE code, ObjectSE[] args, boolean htmlEscape) 指定されたコードのメッセージを取得します。 |
StringSE | getMessage(StringSE code, ObjectSE[] args, StringSE defaultMessage) "defaultHtmlEscape" 設定を使用して、指定されたコードのメッセージを取得します。 |
StringSE | getMessage(StringSE code, ObjectSE[] args, StringSE defaultMessage, boolean htmlEscape) 指定されたコードのメッセージを取得します。 |
StringSE | getMessage(StringSE code, StringSE defaultMessage) "defaultHtmlEscape" 設定を使用して、指定されたコードのメッセージを取得します。 |
MessageSource | getMessageSource() 現在の WebApplicationContext を MessageSource として返します。 |
MapSE<StringSE, ObjectSE> | getModel() この RequestContext がカプセル化するモデルマップがあれば、それを返します。 |
protected ObjectSE | getModelObject(StringSE modelName) 指定されたモデル名のモデルオブジェクトを、モデルまたはリクエスト属性から取得します。 |
StringSE | getPathToServlet() 元のリクエストのコンテキストパスとサーブレットパスを含む、現在のサーブレット内の URL マッピングへのパスを返します。 |
StringSE | getQueryString() 現在のリクエストのクエリ文字列、つまりリクエストパスの後の部分を返します。 |
protected HttpServletRequestEE | getRequest() 基になる HttpServletRequest を返します。 |
RequestDataValueProcessor | getRequestDataValueProcessor() "requestDataValueProcessor" という名前で WebApplicationContext から取得した、使用する RequestDataValueProcessor インスタンスを返します。 |
StringSE | getRequestUri() 元のリクエストのリクエスト URI、つまりパラメーターなしで呼び出された URL を返します。 |
BooleanSE | getResponseEncodedHtmlEscape() HTML エスケープ設定のレスポンスエンコーディングの使用に関するデフォルト設定を返し、デフォルトが指定されていない場合と明示的な値を区別します。 |
protected ServletContextEE | getServletContext() 基になる ServletContext を返します。 |
Theme | getTheme() 現在のテーマを返します(決して null ではありません)。 |
StringSE | getThemeMessage(MessageSourceResolvable resolvable) 現在のテーマで指定された MessageSourceResolvable を取得します。 |
StringSE | getThemeMessage(StringSE code) 指定されたコードのテーマメッセージを取得します。 |
StringSE | getThemeMessage(StringSE code, ListSE<?> args) 指定されたコードのテーマメッセージを取得します。 |
StringSE | getThemeMessage(StringSE code, ListSE<?> args, StringSE defaultMessage) 指定されたコードのテーマメッセージを取得します。 |
StringSE | getThemeMessage(StringSE code, ObjectSE[] args) 指定されたコードのテーマメッセージを取得します。 |
StringSE | getThemeMessage(StringSE code, ObjectSE[] args, StringSE defaultMessage) 指定されたコードのテーマメッセージを取得します。 |
StringSE | getThemeMessage(StringSE code, StringSE defaultMessage) 指定されたコードのテーマメッセージを取得します。 |
TimeZoneSE | getTimeZone() 現在の TimeZone(またはリクエストから導出できない場合は null )を返します。 |
UrlPathHelper | getUrlPathHelper() コンテキストパスに使用される UrlPathHelper を返し、URI のデコードをリクエストします。 |
WebApplicationContext | getWebApplicationContext() 現在の WebApplicationContext を返します。 |
boolean | isDefaultHtmlEscape() デフォルトの HTML エスケープはアクティブですか? 明示的なデフォルトが指定されていない場合は、 false にフォールバックします。 |
boolean | isResponseEncodedHtmlEscape() HTML はデフォルトでレスポンスエンコーディングを使用してエスケープしていますか? 有効にすると、XML マークアップの重要な文字のみが UTF- * エンコーディングでエスケープされます。 |
void | setDefaultHtmlEscape(boolean defaultHtmlEscape) この RequestContext のスコープで、メッセージとエラーのデフォルトの HTML エスケープを(非)有効にします。 |
void | setUrlPathHelper(UrlPathHelper urlPathHelper) コンテキストパスとリクエスト URI のデコードに使用する UrlPathHelper を設定します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public static final StringSE DEFAULT_THEME_NAME
AbstractThemeResolver のデフォルトと同じですが、パッケージの相互依存を避けるためにここではリンクされていません。
public static final StringSE WEB_APPLICATION_CONTEXT_ATTRIBUTE
protected static final boolean jstlPresent
public RequestContext(HttpServletRequestEE request)
Errors インスタンスはモデルの一部であり、通常はリクエスト属性として公開されないため、これは InternalResourceViews でのみ機能します。通常、JSP またはカスタムタグ内で使用されます。
DispatcherServlet リクエスト内でのみ機能します。ルート WebApplicationContext にフォールバックできるように ServletContext を渡します。
request
- 現在の HTTP リクエスト DispatcherServlet
, RequestContext(javax.servlet.http.HttpServletRequest, javax.servlet.ServletContext)
public RequestContext(HttpServletRequestEE request, HttpServletResponseEE response)
Errors インスタンスはモデルの一部であり、通常はリクエスト属性として公開されないため、これは InternalResourceViews でのみ機能します。通常、JSP またはカスタムタグ内で使用されます。
DispatcherServlet リクエスト内でのみ機能します。ルート WebApplicationContext にフォールバックできるように ServletContext を渡します。
request
- 現在の HTTP リクエスト response
- 現在の HTTP レスポンス DispatcherServlet
, RequestContext(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, javax.servlet.ServletContext, Map)
public RequestContext(HttpServletRequestEE request, @Nullable ServletContextEE servletContext)
Errors インスタンスはモデルの一部であり、通常はリクエスト属性として公開されないため、これは InternalResourceViews でのみ機能します。通常、JSP またはカスタムタグ内で使用されます。
ServletContext が指定されている場合、RequestContext はルート WebApplicationContext(DispatcherServlet の外部)でも機能します。
request
- 現在の HTTP リクエスト servletContext
- Web アプリケーションのサーブレットコンテキスト (null
にすることができます。ルート WebApplicationContext へのフォールバックに必要)WebApplicationContext
, DispatcherServlet
public RequestContext(HttpServletRequestEE request, @Nullable MapSE<StringSE,ObjectSE> model)
これは、すべての View 実装で機能します。通常、View の実装で使用されます。
DispatcherServlet リクエスト内でのみ機能します。ルート WebApplicationContext にフォールバックできるように ServletContext を渡します。
request
- 現在の HTTP リクエスト model
- 現在のビューのモデル属性 (エラー検索のリクエスト属性を使用して、null
にすることができます)DispatcherServlet
, RequestContext(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, javax.servlet.ServletContext, Map)
public RequestContext(HttpServletRequestEE request, @Nullable HttpServletResponseEE response, @Nullable ServletContextEE servletContext, @Nullable MapSE<StringSE,ObjectSE> model)
これは、すべての View 実装で機能します。通常、View の実装で使用されます。
ServletContext が指定されている場合、RequestContext はルート WebApplicationContext(DispatcherServlet の外部)でも機能します。
request
- 現在の HTTP リクエスト response
- 現在の HTTP レスポンス servletContext
- Web アプリケーションのサーブレットコンテキスト (null
にすることができます。ルート WebApplicationContext へのフォールバックに必要)model
- 現在のビューのモデル属性 (エラー検索のリクエスト属性を使用して、null
にすることができます)WebApplicationContext
, DispatcherServlet
protected final HttpServletRequestEE getRequest()
@Nullable protected final ServletContextEE getServletContext()
public final WebApplicationContext getWebApplicationContext()
public final MessageSource getMessageSource()
@Nullable public final MapSE<StringSE,ObjectSE> getModel()
null
public final LocaleSE getLocale()
null
は決してありません)。 通常、DispatcherServlet の LocaleResolver
から取得されます。JSTL のロケール属性のフォールバックチェックも含まれます。
@Nullable public TimeZoneSE getTimeZone()
null
)を返します。 通常、DispatcherServlet の LocaleContextResolver
から取得されます。JSTL の TimeZone 属性のフォールバックチェックも含まれます。
protected LocaleSE getFallbackLocale()
デフォルトの実装では、リクエスト、セッション、アプリケーションのスコープで JSTL ロケール属性をチェックします。見つからない場合は、HttpServletRequest.getLocale()
を返します。
null
)ServletRequest.getLocale()
EE@Nullable protected TimeZoneSE getFallbackTimeZone()
デフォルトの実装では、リクエスト、セッション、アプリケーションスコープの JSTL タイムゾーン属性をチェックします。見つからない場合は null
を返します。
null
)public void changeLocale(LocaleSE locale)
LocaleResolver
を通じて新しいロケールを保存します。public void changeLocale(LocaleSE locale, TimeZoneSE timeZone)
LocaleResolver
を通じて新しいロケールコンテキストを保存します。locale
- 新しいロケール timeZone
- 新しいタイムゾーン LocaleContextResolver.setLocaleContext(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, org.springframework.context.i18n.LocaleContext)
, SimpleTimeZoneAwareLocaleContext
public Theme getTheme()
null
ではありません)。テーマのサポートが使用されていない場合の効率を上げるために遅延解決されました。
protected Theme getFallbackTheme()
デフォルトの実装は、デフォルトのテーマ( "theme" という名前)を返します。
null
)public void changeTheme(@Nullable Theme theme)
ThemeResolver
を通じて新しいテーマ名を保存します。public void changeTheme(StringSE themeName)
ThemeResolver
を通じて新しいテーマ名を保存します。themeName
- 新しいテーマの名前 ThemeResolver.setThemeName(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.String)
public void setDefaultHtmlEscape(boolean defaultHtmlEscape)
デフォルトはアプリケーション全体の設定です(web.xml の "defaultHtmlEscape" context-param)。
public boolean isDefaultHtmlEscape()
false
にフォールバックします。@Nullable public BooleanSE getDefaultHtmlEscape()
public boolean isResponseEncodedHtmlEscape()
Spring 4.2 の時点で、明示的なデフォルトが指定されていない場合は、true
にフォールバックします。
@Nullable public BooleanSE getResponseEncodedHtmlEscape()
public void setUrlPathHelper(UrlPathHelper urlPathHelper)
デフォルトの UrlPathHelper は常に使用可能です。
public UrlPathHelper getUrlPathHelper()
デフォルトの UrlPathHelper は常に使用可能です。
@Nullable public RequestDataValueProcessor getRequestDataValueProcessor()
"requestDataValueProcessor"
という名前で取得して使用する RequestDataValueProcessor インスタンスを返します。または、一致する Bean が見つからなかった場合は null
。public StringSE getContextPath()
デコード用の UrlPathHelper へのデリゲート。
public StringSE getContextUrl(StringSE relativeUrl)
relativeUrl
- 相対 URL 部分 public StringSE getContextUrl(StringSE relativeUrl, MapSE<StringSE,?> params)
{}
の名前付きキー)を使用して、指定された相対 URL のコンテキスト認識 URl を返します。例: 相対 URL foo/{bar}?spam={spam}
とパラメーターマップ {bar=baz,spam=nuts}
を送信すると、結果は [contextpath]/foo/baz?spam=nuts
になります。relativeUrl
- 相対 URL 部分 params
- URL のプレースホルダーとして挿入するパラメーターのマップ public StringSE getPathToServlet()
"/main/*"
のサーブレットマッピングが使用されるアプリケーション内の他のリソースへのリンクを構築できます。UrlPathHelper にデリゲートして、コンテキストとサーブレットパスを決定します。
public StringSE getRequestUri()
デコード用の UrlPathHelper へのデリゲート。
public StringSE getQueryString()
デコード用の UrlPathHelper へのデリゲート。
public StringSE getMessage(StringSE code, StringSE defaultMessage)
code
- メッセージのコード defaultMessage
- 検索が失敗した場合に返す文字列 public StringSE getMessage(StringSE code, @Nullable ObjectSE[] args, StringSE defaultMessage)
code
- メッセージのコード args
- メッセージの引数、または存在しない場合は null
defaultMessage
- 検索が失敗した場合に返す文字列 public StringSE getMessage(StringSE code, @Nullable ListSE<?> args, StringSE defaultMessage)
code
- メッセージのコード args
- リストとしてのメッセージの引数。存在しない場合は null
defaultMessage
- 検索が失敗した場合に返す文字列 public StringSE getMessage(StringSE code, @Nullable ObjectSE[] args, StringSE defaultMessage, boolean htmlEscape)
code
- メッセージのコード args
- メッセージの引数、または存在しない場合は null
defaultMessage
- 検索が失敗した場合に返す文字列 htmlEscape
- メッセージを HTML エスケープする必要がある場合 public StringSE getMessage(StringSE code) throws NoSuchMessageException
code
- メッセージのコード NoSuchMessageException
- 見つからない場合 public StringSE getMessage(StringSE code, @Nullable ObjectSE[] args) throws NoSuchMessageException
code
- メッセージのコード args
- メッセージの引数、または存在しない場合は null
NoSuchMessageException
- 見つからない場合 public StringSE getMessage(StringSE code, @Nullable ListSE<?> args) throws NoSuchMessageException
code
- メッセージのコード args
- リストとしてのメッセージの引数。存在しない場合は null
NoSuchMessageException
- 見つからない場合 public StringSE getMessage(StringSE code, @Nullable ObjectSE[] args, boolean htmlEscape) throws NoSuchMessageException
code
- メッセージのコード args
- メッセージの引数、または存在しない場合は null
htmlEscape
- メッセージを HTML エスケープする必要がある場合 NoSuchMessageException
- 見つからない場合 public StringSE getMessage(MessageSourceResolvable resolvable) throws NoSuchMessageException
resolvable
- MessageSourceResolvableNoSuchMessageException
- 見つからない場合 public StringSE getMessage(MessageSourceResolvable resolvable, boolean htmlEscape) throws NoSuchMessageException
resolvable
- MessageSourceResolvablehtmlEscape
- メッセージを HTML エスケープする必要がある場合 NoSuchMessageException
- 見つからない場合 public StringSE getThemeMessage(StringSE code, StringSE defaultMessage)
テーマメッセージは、通常、テーマ固有のリソースパスを示し、クライアントから見えるメッセージではないため、HTML エスケープされることはありません。
code
- メッセージのコード defaultMessage
- 検索が失敗した場合に返す文字列 public StringSE getThemeMessage(StringSE code, @Nullable ObjectSE[] args, StringSE defaultMessage)
テーマメッセージは、通常、テーマ固有のリソースパスを示し、クライアントから見えるメッセージではないため、HTML エスケープされることはありません。
code
- メッセージのコード args
- メッセージの引数、または存在しない場合は null
defaultMessage
- 検索が失敗した場合に返す文字列 public StringSE getThemeMessage(StringSE code, @Nullable ListSE<?> args, StringSE defaultMessage)
テーマメッセージは、通常、テーマ固有のリソースパスを示し、クライアントから見えるメッセージではないため、HTML エスケープされることはありません。
code
- メッセージのコード args
- リストとしてのメッセージの引数。存在しない場合は null
defaultMessage
- 検索が失敗した場合に返す文字列 public StringSE getThemeMessage(StringSE code) throws NoSuchMessageException
テーマメッセージは、通常、テーマ固有のリソースパスを示し、クライアントから見えるメッセージではないため、HTML エスケープされることはありません。
code
- メッセージのコード NoSuchMessageException
- 見つからない場合 public StringSE getThemeMessage(StringSE code, @Nullable ObjectSE[] args) throws NoSuchMessageException
テーマメッセージは、通常、テーマ固有のリソースパスを示し、クライアントから見えるメッセージではないため、HTML エスケープされることはありません。
code
- メッセージのコード args
- メッセージの引数、または存在しない場合は null
NoSuchMessageException
- 見つからない場合 public StringSE getThemeMessage(StringSE code, @Nullable ListSE<?> args) throws NoSuchMessageException
テーマメッセージは、通常、テーマ固有のリソースパスを示し、クライアントから見えるメッセージではないため、HTML エスケープされることはありません。
code
- メッセージのコード args
- リストとしてのメッセージの引数。存在しない場合は null
NoSuchMessageException
- 見つからない場合 public StringSE getThemeMessage(MessageSourceResolvable resolvable) throws NoSuchMessageException
テーマメッセージは、通常、テーマ固有のリソースパスを示し、クライアントから見えるメッセージではないため、HTML エスケープされることはありません。
resolvable
- MessageSourceResolvableNoSuchMessageException
- 見つからない場合 @Nullable public Errors getErrors(StringSE name)
name
- バインドオブジェクトの名前 null
@Nullable public Errors getErrors(StringSE name, boolean htmlEscape)
name
- バインドオブジェクトの名前 htmlEscape
- 自動 HTML エスケープを使用して Errors インスタンスを作成しますか? null
@Nullable protected ObjectSE getModelObject(StringSE modelName)
modelName
- モデルオブジェクトの名前 public BindStatus getBindStatus(StringSE path) throws IllegalStateExceptionSE
path
- 値とエラーが解決される Bean とプロパティパス (たとえば "person.age" )IllegalStateExceptionSE
- 対応する Errors オブジェクトが見つからない場合 public BindStatus getBindStatus(StringSE path, boolean htmlEscape) throws IllegalStateExceptionSE
path
- 値とエラーが解決される Bean とプロパティパス (たとえば "person.age" )htmlEscape
- 自動 HTML エスケープ付きの BindStatus を作成しますか? IllegalStateExceptionSE
- 対応する Errors オブジェクトが見つからない場合