org.apache.struts.taglib.html
Class SelectTag

java.lang.Object
  extended by javax.servlet.jsp.tagext.TagSupport
      extended by javax.servlet.jsp.tagext.BodyTagSupport
          extended by org.apache.struts.taglib.html.BaseHandlerTag
              extended by org.apache.struts.taglib.html.SelectTag
All Implemented Interfaces:
Serializable, BodyTag, IterationTag, Tag
Direct Known Subclasses:
ELSelectTag, NestedSelectTag

public class SelectTag
extends BaseHandlerTag

Custom tag that represents an HTML select element, associated with a bean property specified by our attributes. This tag must be nested inside a form tag.

Version:
$Rev: 471754 $ $Date: 2004-10-16 12:38:42 -0400 (Sat, 16 Oct 2004) $
See Also:
Serialized Form

Field Summary
protected  String[] match
          The actual values we will match against, calculated in doStartTag().
protected static MessageResources messages
          The message resources for this package.
protected  String multiple
          Should multiple selections be allowed.
protected  String name
          The name of the bean containing our underlying property.
protected  String property
          The property name we are associated with.
protected  String saveBody
          The saved body content of this tag.
protected  String size
          How many available options should be displayed when this element is rendered?
protected  String value
          The value to compare with for marking an option selected.
 
Fields inherited from class org.apache.struts.taglib.html.BaseHandlerTag
accesskey, doDisabled, doReadonly, indexed, tabindex
 
Fields inherited from class javax.servlet.jsp.tagext.BodyTagSupport
bodyContent
 
Fields inherited from class javax.servlet.jsp.tagext.TagSupport
id, pageContext
 
Fields inherited from interface javax.servlet.jsp.tagext.BodyTag
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
 
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
SelectTag()
           
 
Method Summary
 int doAfterBody()
          Save any body content of this tag, which will generally be the option(s) representing the values displayed to the user.
 int doEndTag()
          Render the end of this form.
 int doStartTag()
          Render the beginning of this select tag.
 String getMultiple()
           
 String getName()
           
 String getProperty()
          Return the property name.
 String getSize()
           
 String getValue()
          Return the comparison value.
 boolean isMatched(String value)
          Does the specified value match one of those we are looking for?
protected  String prepareName()
          Prepare the name element
 void release()
          Release any acquired resources.
protected  String renderSelectStartElement()
          Create an appropriate select start element based on our parameters.
 void setMultiple(String multiple)
           
 void setName(String name)
           
 void setProperty(String property)
          Set the property name.
 void setSize(String size)
           
 void setValue(String value)
          Set the comparison value.
 
Methods inherited from class org.apache.struts.taglib.html.BaseHandlerTag
doErrorsExist, getAccesskey, getAlt, getAltKey, getBundle, getDir, getDisabled, getElementClose, getErrorKey, getErrorStyle, getErrorStyleClass, getErrorStyleId, getIndexed, getIndexValue, getLang, getLocale, getOnblur, getOnchange, getOnclick, getOndblclick, getOnfocus, getOnkeydown, getOnkeypress, getOnkeyup, getOnmousedown, getOnmousemove, getOnmouseout, getOnmouseover, getOnmouseup, getOnselect, getReadonly, getStyle, getStyleClass, getStyleId, getTabindex, getTitle, getTitleKey, isXhtml, lookupProperty, message, prepareAttribute, prepareEventHandlers, prepareFocusEvents, prepareIndex, prepareInternationalization, prepareKeyEvents, prepareMouseEvents, prepareOtherAttributes, prepareStyles, prepareTextEvents, setAccesskey, setAlt, setAltKey, setBundle, setDir, setDisabled, setErrorKey, setErrorStyle, setErrorStyleClass, setErrorStyleId, setIndexed, setLang, setLocale, setOnblur, setOnchange, setOnclick, setOndblclick, setOnfocus, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setOnselect, setReadonly, setStyle, setStyleClass, setStyleId, setTabindex, setTitle, setTitleKey
 
Methods inherited from class javax.servlet.jsp.tagext.BodyTagSupport
doInitBody, getBodyContent, getPreviousOut, setBodyContent
 
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
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
 
Methods inherited from interface javax.servlet.jsp.tagext.Tag
getParent, setPageContext, setParent
 

Field Detail

messages

protected static MessageResources messages
The message resources for this package.


match

protected String[] match
The actual values we will match against, calculated in doStartTag().


multiple

protected String multiple
Should multiple selections be allowed. Any non-null value will trigger rendering this.


name

protected String name
The name of the bean containing our underlying property.


property

protected String property
The property name we are associated with.


saveBody

protected String saveBody
The saved body content of this tag.


size

protected String size
How many available options should be displayed when this element is rendered?


value

protected String value
The value to compare with for marking an option selected.

Constructor Detail

SelectTag

public SelectTag()
Method Detail

getMultiple

public String getMultiple()

setMultiple

public void setMultiple(String multiple)

getName

public String getName()

setName

public void setName(String name)

getSize

public String getSize()

setSize

public void setSize(String size)

isMatched

public boolean isMatched(String value)
Does the specified value match one of those we are looking for?

Parameters:
value - Value to be compared.

getProperty

public String getProperty()
Return the property name.


setProperty

public void setProperty(String property)
Set the property name.

Parameters:
property - The new property name

getValue

public String getValue()
Return the comparison value.


setValue

public void setValue(String value)
Set the comparison value.

Parameters:
value - The new comparison value

doStartTag

public int doStartTag()
               throws JspException
Render the beginning of this select tag.

Support for indexed property since Struts 1.1

Specified by:
doStartTag in interface Tag
Overrides:
doStartTag in class BodyTagSupport
Throws:
JspException - if a JSP exception has occurred

renderSelectStartElement

protected String renderSelectStartElement()
                                   throws JspException
Create an appropriate select start element based on our parameters.

Throws:
JspException
Since:
Struts 1.1

doAfterBody

public int doAfterBody()
                throws JspException
Save any body content of this tag, which will generally be the option(s) representing the values displayed to the user.

Specified by:
doAfterBody in interface IterationTag
Overrides:
doAfterBody in class BodyTagSupport
Throws:
JspException - if a JSP exception has occurred

doEndTag

public int doEndTag()
             throws JspException
Render the end of this form.

Specified by:
doEndTag in interface Tag
Overrides:
doEndTag in class BodyTagSupport
Throws:
JspException - if a JSP exception has occurred

prepareName

protected String prepareName()
                      throws JspException
Prepare the name element

Overrides:
prepareName in class BaseHandlerTag
Returns:
The element name.
Throws:
JspException

release

public void release()
Release any acquired resources.

Specified by:
release in interface Tag
Overrides:
release in class BaseHandlerTag


Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.