|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.ObjectTagSupport
org.springframework.web.servlet.tags.RequestContextAwareTag
org.springframework.web.servlet.tags.HtmlEscapingAwareTag
org.springframework.web.servlet.tags.MessageTag
public class MessageTag
Custom JSP tag to look up a message in the scope of this page. Messages are resolved using the ApplicationContext and thus support internationalization.
Detects an HTML escaping setting, either on this tag instance, the page level,
or the web.xml
level. Can also apply JavaScript escaping.
If "code" isn't set or cannot be resolved, "text" will be used as default message. Thus, this tag can also be used for HTML escaping of any texts.
setCode(java.lang.String)
,
setText(java.lang.String)
,
HtmlEscapingAwareTag.setHtmlEscape(java.lang.String)
,
setJavaScriptEscape(java.lang.String)
,
HtmlEscapeTag.setDefaultHtmlEscape(java.lang.String)
,
WebUtils.HTML_ESCAPE_CONTEXT_PARAM
Field Summary | |
---|---|
private java.lang.Object |
arguments
|
private java.lang.String |
argumentSeparator
|
private java.lang.String |
code
|
static java.lang.String |
DEFAULT_ARGUMENT_SEPARATOR
Default separator for splitting an arguments String: a comma (",") |
private boolean |
javaScriptEscape
|
private java.lang.Object |
message
|
private java.lang.String |
scope
|
private java.lang.String |
text
|
private java.lang.String |
var
|
Fields inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag |
---|
logger, REQUEST_CONTEXT_PAGE_ATTRIBUTE |
Constructor Summary | |
---|---|
MessageTag()
|
Method Summary | |
---|---|
protected int |
doStartTagInternal()
Resolves the message, escapes it if demanded, and writes it to the page (or exposes it as variable). |
protected MessageSource |
getMessageSource()
Use the current RequestContext's application context as MessageSource. |
protected java.lang.String |
getNoSuchMessageExceptionDescription(NoSuchMessageException ex)
Return default exception message. |
protected java.lang.Object[] |
resolveArguments(java.lang.Object arguments)
Resolve the given arguments Object into an arguments array. |
protected java.lang.String |
resolveMessage()
Resolve the specified message into a concrete message String. |
void |
setArguments(java.lang.Object arguments)
Set optional message arguments for this tag, as a comma-delimited String (each String argument can contain JSP EL), an Object array (used as argument array), or a single Object (used as single argument). |
void |
setArgumentSeparator(java.lang.String argumentSeparator)
Set the separator to use for splitting an arguments String. |
void |
setCode(java.lang.String code)
Set the message code for this tag. |
void |
setJavaScriptEscape(java.lang.String javaScriptEscape)
Set JavaScript escaping for this tag, as boolean value. |
void |
setMessage(java.lang.Object message)
Set the MessageSourceResolvable for this tag. |
void |
setScope(java.lang.String scope)
Set the scope to export the variable to. |
void |
setText(java.lang.String text)
Set the message text for this tag. |
void |
setVar(java.lang.String var)
Set PageContext attribute name under which to expose a variable that contains the resolved message. |
protected void |
writeMessage(java.lang.String msg)
Write the message to the page. |
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 java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String DEFAULT_ARGUMENT_SEPARATOR
private java.lang.Object message
private java.lang.String code
private java.lang.Object arguments
private java.lang.String argumentSeparator
private java.lang.String text
private java.lang.String var
private java.lang.String scope
private boolean javaScriptEscape
Constructor Detail |
---|
public MessageTag()
Method Detail |
---|
public void setMessage(java.lang.Object message)
If a MessageSourceResolvable is specified, it effectively overrides any code, arguments or text specified on this tag.
public void setCode(java.lang.String code)
public void setArguments(java.lang.Object arguments)
public void setArgumentSeparator(java.lang.String argumentSeparator)
setArguments(java.lang.Object)
public void setText(java.lang.String text)
public void setVar(java.lang.String var)
setScope(java.lang.String)
,
javax.servlet.jsp.PageContext#setAttribute
public void setScope(java.lang.String scope)
setVar(java.lang.String)
,
TagUtils.SCOPE_PAGE
,
javax.servlet.jsp.PageContext#setAttribute
public void setJavaScriptEscape(java.lang.String javaScriptEscape) throws JspException
JspException
protected final int doStartTagInternal() throws JspException, java.io.IOException
doStartTagInternal
in class RequestContextAwareTag
JspException
java.io.IOException
resolveMessage()
,
HtmlUtils.htmlEscape(String)
,
JavaScriptUtils.javaScriptEscape(String)
,
writeMessage(String)
protected java.lang.String resolveMessage() throws JspException, NoSuchMessageException
JspException
NoSuchMessageException
protected java.lang.Object[] resolveArguments(java.lang.Object arguments) throws JspException
arguments
- the specified arguments Object
JspException
- if argument conversion failedsetArguments(java.lang.Object)
protected void writeMessage(java.lang.String msg) throws java.io.IOException
Can be overridden in subclasses, e.g. for testing purposes.
msg
- the message to write
java.io.IOException
- if writing failedprotected MessageSource getMessageSource()
protected java.lang.String getNoSuchMessageExceptionDescription(NoSuchMessageException ex)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |