Class BindTag
- 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.BindTag
- All Implemented Interfaces:
Serializable
,IterationTag
,JspTag
,Tag
,TryCatchFinally
,EditorAwareTag
public class BindTag extends HtmlEscapingAwareTag implements EditorAwareTag
The<bind>
tag supports evaluation of binding errors for a certain bean or bean property. Exposes a "status" variable of typeBindStatus
, to both Java expressions and JSP EL expressions.Can be used to bind to any bean or bean property in the model. The specified path determines whether the tag exposes the status of the bean itself (showing object-level errors), a specific bean property (showing field errors), or a matching set of bean properties (showing all corresponding field errors).
The
Errors
object that has been bound using this tag is exposed to collaborating tags, as well as the bean property that this errors object applies to. Nested tags such as theTransformTag
can access those exposed properties.Attribute Summary Attribute Required? Runtime Expression? Description htmlEscape
false
true
Set HTML escaping for this tag, as boolean value. Overrides the default HTML escaping setting for the current page.
ignoreNestedPath
false
true
Set whether to ignore a nested path, if any. Default is to not ignore.
path
true
true
The path to the bean or bean property to bind status information for. For instance account.name, company.address.zipCode or just employee. The status object will exported to the page scope, specifically for this bean or bean property
- Author:
- Rod Johnson, Juergen Hoeller
- See Also:
setPath(java.lang.String)
, Serialized Form
Field Summary
Fields Modifier and Type Field Description static String
STATUS_VARIABLE_NAME
Name of the exposed variable within the scope of this tag: "status".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 Description BindTag()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
doEndTag()
void
doFinally()
protected int
doStartTagInternal()
Called by doStartTag to perform the actual work.PropertyEditor
getEditor()
Retrieve the PropertyEditor for the property that this tag is currently bound to.Errors
getErrors()
Retrieve the Errors instance that this tag is currently bound to.String
getPath()
Return the path that this tag applies to.String
getProperty()
Retrieve the property that this tag is currently bound to, ornull
if bound to an object rather than a specific property.boolean
isIgnoreNestedPath()
Return whether to ignore a nested path, if any.void
setIgnoreNestedPath(boolean ignoreNestedPath)
Set whether to ignore a nested path, if any.void
setPath(String path)
Set the path that this tag should apply.Methods inherited from class org.springframework.web.servlet.tags.HtmlEscapingAwareTag
htmlEscape, isDefaultHtmlEscape, isHtmlEscape, isResponseEncodedHtmlEscape, setHtmlEscape
Methods inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag
doCatch, doStartTag, getRequestContext
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
doAfterBody, findAncestorWithClass, getId, getParent, getValue, getValues, release, removeValue, setId, setPageContext, setParent, setValue
Field Detail
STATUS_VARIABLE_NAME
public static final String STATUS_VARIABLE_NAME
Name of the exposed variable within the scope of this tag: "status".- See Also:
- Constant Field Values
Constructor Detail
BindTag
public BindTag()
Method Detail
setPath
public void setPath(String path)
Set the path that this tag should apply. Can be a bean (e.g. "person") to get global errors, or a bean property (e.g. "person.name") to get field errors (also supporting nested fields and "person.na*" mappings). "person.*" will return all errors for the specified bean, both global and field errors.
setIgnoreNestedPath
public void setIgnoreNestedPath(boolean ignoreNestedPath)
Set whether to ignore a nested path, if any. Default is to not ignore.
isIgnoreNestedPath
public boolean isIgnoreNestedPath()
Return whether to ignore a nested path, if any.
doStartTagInternal
protected final int doStartTagInternal() throws Exception
Description copied from class:RequestContextAwareTag
Called by doStartTag to perform the actual work.- Specified by:
doStartTagInternal
in classRequestContextAwareTag
- Returns:
- same as TagSupport.doStartTag
- Throws:
Exception
- any exception, any checked one other than a JspException gets wrapped in a JspException by doStartTag- See Also:
TagSupport.doStartTag()
doEndTag
public int doEndTag()
- Specified by:
doEndTag
in interfaceTag
- Overrides:
doEndTag
in classTagSupport
getProperty
@Nullable public final String getProperty()
Retrieve the property that this tag is currently bound to, ornull
if bound to an object rather than a specific property. Intended for cooperating nesting tags.- Returns:
- the property that this tag is currently bound to, or
null
if none
getErrors
@Nullable public final Errors getErrors()
Retrieve the Errors instance that this tag is currently bound to. Intended for cooperating nesting tags.- Returns:
- the current Errors instance, or
null
if none
getEditor
@Nullable public final PropertyEditor getEditor()
Description copied from interface:EditorAwareTag
Retrieve the PropertyEditor for the property that this tag is currently bound to. Intended for cooperating nesting tags.- Specified by:
getEditor
in interfaceEditorAwareTag
- Returns:
- the current PropertyEditor, or
null
if none
doFinally
public void doFinally()
- Specified by:
doFinally
in interfaceTryCatchFinally
- Overrides:
doFinally
in classRequestContextAwareTag