public interface ThemeResolver このインターフェースでは、セッションや Cookie などに基づく実装が可能です。デフォルトの実装は FixedThemeResolver であり、構成されたデフォルトのテーマを使用するだけです。
このリゾルバーは、現在のテーマ名の決定のみを担当することに注意してください。解決されたテーマ名の Theme インスタンスは、それぞれの ThemeSource、つまり現在の WebApplicationContext を介して DispatcherServlet によって検索されます。
RequestContext.getTheme() を使用して、実際の解決戦略に関係なく、コントローラーまたはビューで現在のテーマを取得します。
Theme, ThemeSource| 修飾子と型 | メソッドと説明 |
|---|---|
java.lang.String | resolveThemeName(HttpServletRequestEE request) 指定されたリクエストを介して現在のテーマ名を解決します。 |
void | setThemeName(HttpServletRequestEE request, HttpServletResponseEE response, java.lang.String themeName) 現在のテーマ名を指定されたものに設定します。 |
java.lang.String resolveThemeName(HttpServletRequestEE request)
request - 解決に使用するリクエスト void setThemeName(HttpServletRequestEE request, @Nullable HttpServletResponseEE response, @Nullable java.lang.String themeName)
request - テーマ名の変更に使用するリクエスト response - テーマ名の変更に使用されるレスポンス themeName - 新しいテーマ名 (null または空にしてリセットする)java.lang.UnsupportedOperationException - ThemeResolver 実装がテーマの動的変更をサポートしていない場合