org.springframework.web.servlet.tags

## Class ThemeTag

- java.lang.Object
- - javax.servlet.jsp.tagext.TagSupport
  - - org.springframework.web.servlet.tags.RequestContextAwareTag
    - - org.springframework.web.servlet.tags.HtmlEscapingAwareTag
      - - org.springframework.web.servlet.tags.MessageTag
        - - org.springframework.web.servlet.tags.ThemeTag

- All Implemented Interfaces:
    Serializable, IterationTag, JspTag, Tag, TryCatchFinally, ArgumentAware

      public class ThemeTag
      extends MessageTag

  Custom tag to look up a theme message in the scope of this page. Messages are looked up using the ApplicationContext's ThemeSource, and thus should support internationalization.

  Regards a HTML escaping setting, either on this tag instance, the page level, or the web.xml level.

  If "code" isn't set or cannot be resolved, "text" will be used as default message.

  Message arguments can be specified via the `arguments` attribute or by using nested `<spring:argument>` tags.

  Author:
    Jean-Pierre Pawlak, Juergen Hoeller
  See Also:
    `Theme`, `ThemeSource`, `MessageTag.setCode(java.lang.String)`, `MessageTag.setText(java.lang.String)`, `HtmlEscapingAwareTag.setHtmlEscape(boolean)`, `HtmlEscapeTag.setDefaultHtmlEscape(boolean)`, `WebUtils.HTML_ESCAPE_CONTEXT_PARAM`, `ArgumentTag`, Serialized Form

- - ### Field Summary

    - ### Fields inherited from class org.springframework.web.servlet.tags.MessageTag

      `DEFAULT_ARGUMENT_SEPARATOR`

    - ### Fields inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag

      `logger, REQUEST_CONTEXT_PAGE_ATTRIBUTE`

    - ### Fields inherited from class javax.servlet.jsp.tagext.TagSupport

      `id, pageContext`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.IterationTag

      `EVAL_BODY_AGAIN`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.Tag

      `EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ThemeTag()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected MessageSource` | `getMessageSource()` Use the theme MessageSource for theme message resolution.
    `protected String` | `getNoSuchMessageExceptionDescription(NoSuchMessageException ex)` Return exception message that indicates the current theme.

    - ### Methods inherited from class org.springframework.web.servlet.tags.MessageTag

      `addArgument, doEndTag, doStartTagInternal, release, resolveArguments, resolveMessage, setArguments, setArgumentSeparator, setCode, setJavaScriptEscape, setMessage, setScope, setText, setVar, writeMessage`

    - ### Methods inherited from class org.springframework.web.servlet.tags.HtmlEscapingAwareTag

      `isDefaultHtmlEscape, isHtmlEscape, setHtmlEscape`

    - ### Methods inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag

      `doCatch, doFinally, doStartTag, getRequestContext`

    - ### Methods inherited from class javax.servlet.jsp.tagext.TagSupport

      `doAfterBody, findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ThemeTag

          public ThemeTag()

  - ### Method Detail

    - #### getMessageSource

          protected MessageSource getMessageSource()

      Use the theme MessageSource for theme message resolution.
      Overrides:
        `getMessageSource` in class `MessageTag`

    - #### getNoSuchMessageExceptionDescription

          protected String getNoSuchMessageExceptionDescription(NoSuchMessageException ex)

      Return exception message that indicates the current theme.
      Overrides:
        `getNoSuchMessageExceptionDescription` in class `MessageTag`