|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--javax.faces.component.UIComponent
|
+--javax.faces.component.UIComponentBase
|
+--javax.faces.component.UIOutput
|
+--javax.faces.component.UIInput
|
+--javax.faces.component.UISelectMany
UISelectMany is a UIComponent that represents
the user's choice of a zero or more items from among a discrete set of
available options. The user can modify the selected values. Optionally,
the component can be preconfigured with zero or more currently selected
items, by storing them as an array in the value property of
the component.
This component is generally rendered as a select box or a group of checkboxes.
By default, the rendererType property must be set to
"javax.faces.Listbox". This value can be changed by
calling the setRendererType() method.
The Renderer for this component must
perform the following logic on getConvertedValue():
Obtain the Converter using the following algorithm:
If the component has an attached Converter, use it.
If not, look for a ValueBinding for value (if any).
The ValueBinding must point to something that is:
int[]). Look up the
registered by-class Converter for this primitive type.Integer[] or
String[]). Look up the registered by-class
Converter for the underlying element type.java.util.List. Assume that the element type is
java.lang.String, so no conversion is required.If for any reason a Converter cannot be found, assume
the type to be a String array.
Use the selected Converter (if any) to convert each element in the
values array or list from the request to the proper type. If the component
has a ValueBinding for value, create an array
of the expected type to hold the converted values. If the component
does not have a ValueBinding for value, create
an array of type Object. Store the created array
as the local value of the component, set the component's valid
state to true and return.
| Field Summary | |
static java.lang.String |
COMPONENT_FAMILY
The standard component family for this component. |
static java.lang.String |
COMPONENT_TYPE
The standard component type for this component. |
static java.lang.String |
INVALID_MESSAGE_ID
The message identifier of the FacesMessage to be created if
a value not matching the available options is specified. |
| Fields inherited from class javax.faces.component.UIInput |
CONVERSION_MESSAGE_ID, REQUIRED_MESSAGE_ID |
| Constructor Summary | |
UISelectMany()
Create a new UISelectMany instance with default property
values. |
|
| Method Summary | |
protected boolean |
compareValues(java.lang.Object previous,
java.lang.Object value)
Return true if the new value is different from the
previous value. |
java.lang.String |
getFamily()
Return the identifier of the component family to which this component belongs. |
java.lang.Object[] |
getSelectedValues()
Return the currently selected values, or null if there
are no currently selected values. |
javax.faces.el.ValueBinding |
getValueBinding(java.lang.String name)
Return any ValueBinding set for value if a
ValueBinding for selectedValues is requested;
otherwise, perform the default superclass processing for this method. |
void |
setSelectedValues(java.lang.Object[] selectedValues)
Set the currently selected values, or null to indicate
that there are no currently selected values. |
void |
setValueBinding(java.lang.String name,
javax.faces.el.ValueBinding binding)
Store any ValueBinding specified for
selectedValues under value instead;
otherwise, perform the default superclass processing for this method. |
protected void |
validateValue(javax.faces.context.FacesContext context,
java.lang.Object value)
In addition to the standard validation behavior inherited from UIInput, ensure that any specified values are equal to one of
the available options. |
| Methods inherited from class javax.faces.component.UIInput |
addValidator, addValueChangeListener, broadcast, decode, getConvertedValue, getSubmittedValue, getValidator, getValidators, getValueChangeListener, getValueChangeListeners, isImmediate, isLocalValueSet, isRequired, isValid, processDecodes, processUpdates, processValidators, removeValidator, removeValueChangeListener, restoreState, saveState, setImmediate, setLocalValueSet, setRequired, setSubmittedValue, setValid, setValidator, setValue, setValueChangeListener, updateModel, validate |
| Methods inherited from class javax.faces.component.UIOutput |
getConverter, getLocalValue, getValue, setConverter |
| Methods inherited from class javax.faces.component.UIComponentBase |
addFacesListener, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientId, getFacesContext, getFacesListeners, getFacet, getFacets, getFacetsAndChildren, getId, getParent, getRenderer, getRendererType, getRendersChildren, isRendered, isTransient, processRestoreState, processSaveState, queueEvent, removeFacesListener, restoreAttachedState, saveAttachedState, setId, setParent, setRendered, setRendererType, setTransient |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface javax.faces.component.ValueHolder |
getConverter, getLocalValue, getValue, setConverter |
| Field Detail |
public static final java.lang.String COMPONENT_TYPE
The standard component type for this component.
public static final java.lang.String COMPONENT_FAMILY
The standard component family for this component.
public static final java.lang.String INVALID_MESSAGE_ID
The message identifier of the
FacesMessage to be created if
a value not matching the available options is specified.
| Constructor Detail |
public UISelectMany()
Create a new UISelectMany instance with default property
values.
| Method Detail |
public java.lang.String getFamily()
UIComponentReturn the identifier of the component family to which this
component belongs. This identifier, in conjunction with the value
of the rendererType property, may be used to select
the appropriate Renderer for this component instance.
getFamily in class UIInputpublic java.lang.Object[] getSelectedValues()
Return the currently selected values, or null if there
are no currently selected values. This is a typesafe alias for
getValue().
public void setSelectedValues(java.lang.Object[] selectedValues)
Set the currently selected values, or null to indicate
that there are no currently selected values. This is a typesafe
alias for setValue().
selectedValues - The new selected values (if any)public javax.faces.el.ValueBinding getValueBinding(java.lang.String name)
Return any ValueBinding set for value if a
ValueBinding for selectedValues is requested;
otherwise, perform the default superclass processing for this method.
getValueBinding in class UIComponentBasename - Name of the attribute or property for which to retrieve
a ValueBinding
java.lang.NullPointerException - if name
is null
public void setValueBinding(java.lang.String name,
javax.faces.el.ValueBinding binding)
Store any ValueBinding specified for
selectedValues under value instead;
otherwise, perform the default superclass processing for this method.
setValueBinding in class UIComponentBasename - Name of the attribute or property for which to set
a ValueBindingbinding - The ValueBinding to set, or null
to remove any currently set ValueBinding
java.lang.NullPointerException - if name
is null
protected boolean compareValues(java.lang.Object previous,
java.lang.Object value)
Return true if the new value is different from the
previous value. Value comparison must not be sensitive to element order.
compareValues in class UIInputprevious - old value of this componentvalue - new value of this component
protected void validateValue(javax.faces.context.FacesContext context,
java.lang.Object value)
In addition to the standard validation behavior inherited from
UIInput, ensure that any specified values are equal to one of
the available options. If it is not, enqueue an error message
and set the valid property to false.
validateValue in class UIInputcontext - The FacesContext for the current requestvalue - The converted value to test for membership.
java.lang.NullPointerException - if context
is null
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||