com.opensymphony.webwork.components
Class Select
java.lang.Object
com.opensymphony.webwork.components.Component
com.opensymphony.webwork.components.UIBean
com.opensymphony.webwork.components.ListUIBean
com.opensymphony.webwork.components.Select
- Direct Known Subclasses:
- UpDownSelect
public class Select
- extends ListUIBean
Render an HTML input tag of type select.
Examples
<ww:select label="Pets"
name="petIds"
list="petDao.pets"
listKey="id"
listValue="name"
multiple="true"
size="3"
required="true"
/>
<ww:select label="Months"
name="months"
headerKey="-1" headerValue="Select Month"
list="#{'01':'Jan', '02':'Feb', [...]}"
value="selectedMonth"
required="true"
/>
// The month id (01, 02, ...) returned by the getSelectedMonth() call
// against the stack will be auto-selected
Note: For any of the tags that use lists (select probably being the most ubiquitous), which uses the OGNL list
notation (see the "months" example above), it should be noted that the map key created (in the months example,
the '01', '02', etc.) is typed. '1' is a char, '01' is a String, "1" is a String. This is important since if
the value returned by your "value" attribute is NOT the same type as the key in the "list" attribute, they
WILL NOT MATCH, even though their String values may be equivalent. If they don't match, nothing in your list
will be auto-selected.
- Since:
- 2.2
- Version:
- $Revision: 2468 $
- Author:
- Patrick Lightbody, Rene Gielen, tm_jee
Fields inherited from class com.opensymphony.webwork.components.UIBean |
accesskey, cssClass, cssStyle, disabled, label, labelPosition, name, onblur, onchange, onclick, ondblclick, onfocus, onkeydown, onkeypress, onkeyup, onmousedown, onmousemove, onmouseout, onmouseover, onmouseup, onselect, request, required, requiredposition, response, tabindex, template, templateDir, templateSuffix, theme, title, tooltip, tooltipConfig, value |
Methods inherited from class com.opensymphony.webwork.components.UIBean |
addFormParameter, buildTemplateName, enableAncestorFormCustomOnsubmit, end, escape, evaluateNameValue, evaluateParams, getTemplate, getTemplateDir, getTheme, getTooltipConfig, mergeTemplate, populateComponentHtmlId, setAccesskey, setCssClass, setCssStyle, setDisabled, setLabel, setLabelposition, setLabelPosition, setName, setOnblur, setOnchange, setOnclick, setOndblclick, setOnfocus, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setOnselect, setRequired, setRequiredposition, setTabindex, setTemplate, setTemplateDir, setTheme, setTitle, setTooltip, setTooltipConfig, setValue |
Methods inherited from class com.opensymphony.webwork.components.Component |
addAllParameters, addParameter, altSyntax, copyParams, determineActionURL, determineNamespace, end, fieldError, findAncestor, findString, findString, findValue, findValue, findValue, getComponentStack, getId, getParameters, getStack, popComponentStack, setId, start, toString, usesBody |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TEMPLATE
public static final String TEMPLATE
- See Also:
- Constant Field Values
emptyOption
protected String emptyOption
headerKey
protected String headerKey
headerValue
protected String headerValue
multiple
protected String multiple
size
protected String size
Select
public Select(OgnlValueStack stack,
HttpServletRequest request,
HttpServletResponse response)
getDefaultTemplate
protected String getDefaultTemplate()
- Description copied from class:
UIBean
- A contract that requires each concrete UI Tag to specify which template should be used as a default. For
example, the CheckboxTab might return "checkbox.vm" while the RadioTag might return "radio.vm". This value
not begin with a '/' unless you intend to make the path absolute rather than relative to the
current theme.
- Specified by:
getDefaultTemplate
in class UIBean
- Returns:
- The name of the template to be used as the default.
evaluateExtraParams
public void evaluateExtraParams()
- Overrides:
evaluateExtraParams
in class ListUIBean
setEmptyOption
public void setEmptyOption(String emptyOption)
- Whether or not to add an empty (--) option after the header option
setHeaderKey
public void setHeaderKey(String headerKey)
- Key for first item in list. Must not be empty! "'-1'" and "''" is correct, "" is bad.
setHeaderValue
public void setHeaderValue(String headerValue)
- Value expression for first item in list
setMultiple
public void setMultiple(String multiple)
- Creates a multiple select. The tag will pre-select multiple values if the values are passed as an Array (of appropriate types) via the value attribute. Passing a Collection may work too? Haven't tested this.
setSize
public void setSize(String size)
- Size of the element box (# of elements to show)