javax.faces.component

## Class UISelectOne

- java.lang.Object
- - javax.faces.component.UIComponent
  - - javax.faces.component.UIComponentBase
    - - javax.faces.component.UIOutput
      - - javax.faces.component.UIInput
        - - javax.faces.component.UISelectOne

- All Implemented Interfaces:
    EventListener, EditableValueHolder, PartialStateHolder, StateHolder, TransientStateHolder, ValueHolder, ComponentSystemEventListener, FacesListener, SystemEventListenerHolder
  Direct Known Subclasses:
    HtmlSelectOneListbox, HtmlSelectOneMenu, HtmlSelectOneRadio

      public class UISelectOne
      extends UIInput

  UISelectOne is a `UIComponent` that represents the user's choice of zero or one items from among a discrete set of available options. The user can modify the selected value. Optionally, the component can be preconfigured with a currently selected item, by storing it as the `value` property of the component.

  This component is generally rendered as a select box or a group of radio buttons.

  By default, the `rendererType` property is set to "`javax.faces.Menu`". This value can be changed by calling the `setRendererType()` method.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `COMPONENT_FAMILY` The standard component family for this component.
    `static String` | `COMPONENT_TYPE` The standard component type for this component.
    `static 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, UPDATE_MESSAGE_ID, VALIDATE_EMPTY_FIELDS_PARAM_NAME`

    - ### Fields inherited from class javax.faces.component.UIComponent

      `ATTRS_WITH_DECLARED_DEFAULT_VALUES, BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, HONOR_CURRENT_COMPONENT_ATTRIBUTES_PARAM_NAME, VIEW_LOCATION_KEY`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `UISelectOne()` Create a new `UISelectOne` instance with default property values.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getFamily()` Return the identifier of the component family to which this component belongs.
    `protected void` | `validateValue(FacesContext context, Object value)` In addition to the standard validation behavior inherited from `UIInput`, ensure that any specified value is equal to one of the available options.

    - ### Methods inherited from class javax.faces.component.UIInput

      `addValidator, addValueChangeListener, clearInitialState, compareValues, decode, getConvertedValue, getConverterMessage, getRequiredMessage, getSubmittedValue, getValidator, getValidatorMessage, getValidators, getValue, getValueChangeListener, getValueChangeListeners, isEmpty, isImmediate, isLocalValueSet, isRequired, isValid, markInitialState, processDecodes, processUpdates, processValidators, removeValidator, removeValueChangeListener, resetValue, restoreState, saveState, setConverterMessage, setImmediate, setLocalValueSet, setRequired, setRequiredMessage, setSubmittedValue, setValid, setValidator, setValidatorMessage, setValue, setValueChangeListener, updateModel, validate`

    - ### Methods inherited from class javax.faces.component.UIOutput

      `getConverter, getLocalValue, setConverter`

    - ### Methods inherited from class javax.faces.component.UIComponentBase

      `addClientBehavior, addFacesListener, broadcast, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getClientId, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getListenersForEventClass, getParent, getPassThroughAttributes, getRenderer, getRendererType, getRendersChildren, getValueBinding, invokeOnComponent, isRendered, isTransient, processRestoreState, processSaveState, queueEvent, removeFacesListener, restoreAttachedState, saveAttachedState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding, subscribeToEvent, unsubscribeFromEvent`

    - ### Methods inherited from class javax.faces.component.UIComponent

      `encodeAll, getClientId, getCompositeComponentParent, getContainerClientId, getCurrentComponent, getCurrentCompositeComponent, getNamingContainer, getPassThroughAttributes, getResourceBundleMap, getStateHelper, getStateHelper, getTransientStateHelper, getTransientStateHelper, getValueExpression, initialStateMarked, isCompositeComponent, isInView, isVisitable, popComponentFromEL, processEvent, pushComponentToEL, restoreTransientState, saveTransientState, setInView, setValueExpression, visitTree`

    - ### 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, setConverter`

- - ### Field Detail

    - #### COMPONENT_TYPE

          public static final String COMPONENT_TYPE

      The standard component type for this component.

      See Also:
        Constant Field Values

    - #### COMPONENT_FAMILY

          public static final String COMPONENT_FAMILY

      The standard component family for this component.

      See Also:
        Constant Field Values

    - #### INVALID_MESSAGE_ID

          public static final String INVALID_MESSAGE_ID

      The message identifier of the `FacesMessage` to be created if a value not matching the available options is specified.

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### UISelectOne

          public UISelectOne()

      Create a new `UISelectOne` instance with default property values.

  - ### Method Detail

    - #### getFamily

          public String getFamily()

      Description copied from class: `UIComponent`

      Return 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.

      Overrides:
        `getFamily` in class `UIInput`

    - #### validateValue

          protected void validateValue(FacesContext context,
                           Object value)

      In addition to the standard validation behavior inherited from `UIInput`, ensure that any specified value is equal to one of the available options. Before comparing each option, coerce the option value type to the type of this component's value following the Expression Language coercion rules. If the specified value is not equal to any of the options, enqueue an error message and set the `valid` property to `false`.

      If `UIInput.isRequired()` returns `true`, and the current value is equal to the value of an inner `UISelectItem` whose `UISelectItem.isNoSelectionOption()` method returns `true`, enqueue an error message and set the `valid` property to `false`.

      Overrides:
        `validateValue` in class `UIInput`
      Parameters:
        `context` - The `FacesContext` for the current request
        `value` - The converted value to test for membership.
      Throws:
        `NullPointerException` - if `context` is `null`

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.