org.springframework.web.servlet.tags.form
Class AbstractCheckedElementTag

java.lang.Object
  extended by javax.servlet.jsp.tagext.TagSupport
      extended by org.springframework.web.servlet.tags.RequestContextAwareTag
          extended by org.springframework.web.servlet.tags.HtmlEscapingAwareTag
              extended by org.springframework.web.servlet.tags.form.AbstractFormTag
                  extended by org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag
                      extended by org.springframework.web.servlet.tags.form.AbstractHtmlElementTag
                          extended by org.springframework.web.servlet.tags.form.AbstractHtmlInputElementTag
                              extended by org.springframework.web.servlet.tags.form.AbstractCheckedElementTag
All Implemented Interfaces:
Serializable, DynamicAttributes, IterationTag, JspTag, Tag, TryCatchFinally, EditorAwareTag
Direct Known Subclasses:
AbstractMultiCheckedElementTag, AbstractSingleCheckedElementTag

public abstract class AbstractCheckedElementTag
extends AbstractHtmlInputElementTag

Abstract base class to provide common methods for implementing databinding-aware JSP tags for rendering an HTML 'input' element with a 'type' of 'checkbox' or 'radio'.

Since:
2.5
Author:
Thomas Risberg, Juergen Hoeller, Rossen Stoyanchev
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlInputElementTag
ACCESSKEY_ATTRIBUTE, DISABLED_ATTRIBUTE, ONBLUR_ATTRIBUTE, ONCHANGE_ATTRIBUTE, ONFOCUS_ATTRIBUTE, READONLY_ATTRIBUTE
 
Fields inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlElementTag
CLASS_ATTRIBUTE, DIR_ATTRIBUTE, LANG_ATTRIBUTE, ONCLICK_ATTRIBUTE, ONDBLCLICK_ATTRIBUTE, ONKEYDOWN_ATTRIBUTE, ONKEYPRESS_ATTRIBUTE, ONKEYUP_ATTRIBUTE, ONMOUSEDOWN_ATTRIBUTE, ONMOUSEMOVE_ATTRIBUTE, ONMOUSEOUT_ATTRIBUTE, ONMOUSEOVER_ATTRIBUTE, ONMOUSEUP_ATTRIBUTE, STYLE_ATTRIBUTE, TABINDEX_ATTRIBUTE, TITLE_ATTRIBUTE
 
Fields inherited from class org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag
COMMAND_NAME_VARIABLE_NAME, NESTED_PATH_VARIABLE_NAME
 
Fields inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag
logger, REQUEST_CONTEXT_PAGE_ATTRIBUTE
 
Fields inherited from class javax.servlet.jsp.tagext.TagSupport
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
AbstractCheckedElementTag()
           
 
Method Summary
protected  String autogenerateId()
          Return a unique ID for the bound name within the current PageContext.
protected abstract  String getInputType()
          Return the type of the HTML input element to generate: "checkbox" or "radio".
protected  boolean isValidDynamicAttribute(String localName, Object value)
          Flags "type" as an illegal dynamic attribute.
protected  void renderFromBoolean(Boolean boundValue, TagWriter tagWriter)
          Render the 'input(checkbox)' with the supplied value, marking the 'input' element as 'checked' if the supplied Boolean is true.
protected  void renderFromValue(Object item, Object value, TagWriter tagWriter)
          Render the 'input(checkbox)' with the supplied value, marking the 'input' element as 'checked' if the supplied value matches the bound value.
protected  void renderFromValue(Object value, TagWriter tagWriter)
          Render the 'input(checkbox)' with the supplied value, marking the 'input' element as 'checked' if the supplied value matches the bound value.
protected abstract  int writeTagContent(TagWriter tagWriter)
          Writes the 'input' element to the supplied TagWriter, marking it as 'checked' if appropriate.
 
Methods inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlInputElementTag
getAccesskey, getDisabled, getOnblur, getOnchange, getOnfocus, getReadonly, isDisabled, isReadonly, setAccesskey, setDisabled, setOnblur, setOnchange, setOnfocus, setReadonly, writeOptionalAttributes
 
Methods inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlElementTag
getCssClass, getCssErrorClass, getCssStyle, getDir, getDynamicAttributes, getLang, getOnclick, getOndblclick, getOnkeydown, getOnkeypress, getOnkeyup, getOnmousedown, getOnmousemove, getOnmouseout, getOnmouseover, getOnmouseup, getTabindex, getTitle, resolveCssClass, setCssClass, setCssErrorClass, setCssStyle, setDir, setDynamicAttribute, setLang, setOnclick, setOndblclick, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setTabindex, setTitle, writeDefaultAttributes
 
Methods inherited from class org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag
convertToDisplayString, doFinally, getBindStatus, getBoundValue, getEditor, getId, getName, getNestedPath, getPath, getPropertyEditor, getPropertyPath, processFieldValue, resolveId, setId, setPath
 
Methods inherited from class org.springframework.web.servlet.tags.form.AbstractFormTag
createTagWriter, doStartTagInternal, evaluate, evaluateBoolean, getDisplayString, getDisplayString, isDefaultHtmlEscape, writeOptionalAttribute
 
Methods inherited from class org.springframework.web.servlet.tags.HtmlEscapingAwareTag
isHtmlEscape, setHtmlEscape
 
Methods inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag
doCatch, doStartTag, getRequestContext
 
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
doAfterBody, doEndTag, findAncestorWithClass, getParent, getValue, getValues, release, removeValue, setPageContext, setParent, setValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractCheckedElementTag

public AbstractCheckedElementTag()
Method Detail

renderFromValue

protected void renderFromValue(Object value,
                               TagWriter tagWriter)
                        throws JspException
Render the 'input(checkbox)' with the supplied value, marking the 'input' element as 'checked' if the supplied value matches the bound value.

Throws:
JspException

renderFromValue

protected void renderFromValue(Object item,
                               Object value,
                               TagWriter tagWriter)
                        throws JspException
Render the 'input(checkbox)' with the supplied value, marking the 'input' element as 'checked' if the supplied value matches the bound value.

Throws:
JspException

renderFromBoolean

protected void renderFromBoolean(Boolean boundValue,
                                 TagWriter tagWriter)
                          throws JspException
Render the 'input(checkbox)' with the supplied value, marking the 'input' element as 'checked' if the supplied Boolean is true.

Throws:
JspException

autogenerateId

protected String autogenerateId()
                         throws JspException
Return a unique ID for the bound name within the current PageContext.

Overrides:
autogenerateId in class AbstractDataBoundFormElementTag
Throws:
JspException

writeTagContent

protected abstract int writeTagContent(TagWriter tagWriter)
                                throws JspException
Writes the 'input' element to the supplied TagWriter, marking it as 'checked' if appropriate.

Specified by:
writeTagContent in class AbstractFormTag
Returns:
valid tag render instruction as per Tag.doStartTag().
Throws:
JspException

isValidDynamicAttribute

protected boolean isValidDynamicAttribute(String localName,
                                          Object value)
Flags "type" as an illegal dynamic attribute.

Overrides:
isValidDynamicAttribute in class AbstractHtmlElementTag

getInputType

protected abstract String getInputType()
Return the type of the HTML input element to generate: "checkbox" or "radio".