javax.faces.component

## Interface EditableValueHolder

- All Superinterfaces:
    ValueHolder
  All Known Implementing Classes:
    HtmlInputFile, HtmlInputHidden, HtmlInputSecret, HtmlInputText, HtmlInputTextarea, HtmlSelectBooleanCheckbox, HtmlSelectManyCheckbox, HtmlSelectManyListbox, HtmlSelectManyMenu, HtmlSelectOneListbox, HtmlSelectOneMenu, HtmlSelectOneRadio, UIInput, UISelectBoolean, UISelectMany, UISelectOne, UIViewParameter

      public interface EditableValueHolder
      extends ValueHolder

  EditableValueHolder is an extension of ValueHolder that describes additional features supported by editable components, including `ValueChangeEvent`s and `Validator`s.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addValidator(Validator validator)` Add a `Validator` instance to the set associated with this component.
    `void` | `addValueChangeListener(ValueChangeListener listener)` Add a new `ValueChangeListener` to the set of listeners interested in being notified when `ValueChangeEvent`s occur.
    `Object` | `getSubmittedValue()` Return the submittedValue value of this component.
    `MethodBinding` | `getValidator()` Deprecated. `getValidators()` should be used instead.
    `Validator[]` | `getValidators()` Return the set of registered `Validator`s for this component instance.
    `MethodBinding` | `getValueChangeListener()` Deprecated. Use `getValueChangeListeners()` instead.
    `ValueChangeListener[]` | `getValueChangeListeners()` Return the set of registered `ValueChangeListener`s for this component instance.
    `boolean` | `isImmediate()` Return the "immediate" state for this component.
    `boolean` | `isLocalValueSet()` Return the "local value set" state for this component.
    `boolean` | `isRequired()` Return the "required field" state for this component.
    `boolean` | `isValid()` Return a flag indicating whether the local value of this component is valid (no conversion error has occurred).
    `void` | `removeValidator(Validator validator)` Remove a `Validator` instance from the set associated with this component, if it was previously associated.
    `void` | `removeValueChangeListener(ValueChangeListener listener)` Remove an existing `ValueChangeListener` (if any) from the set of listeners interested in being notified when `ValueChangeEvent`s occur.
    `void` | `resetValue()` Convenience method to reset this component's value to the un-initialized state.
    `void` | `setImmediate(boolean immediate)` Set the "immediate" state for this component.
    `void` | `setLocalValueSet(boolean localValueSet)` Sets the "local value set" state for this component.
    `void` | `setRequired(boolean required)` Set the "required field" state for this component.
    `void` | `setSubmittedValue(Object submittedValue)` Set the submittedValue value of this component.
    `void` | `setValid(boolean valid)` Set a flag indicating whether the local value of this component is valid (no conversion error has occurred).
    `void` | `setValidator(MethodBinding validatorBinding)` Deprecated. Use `addValidator(javax.faces.validator.Validator)` instead, obtaining the argument `Validator` by creating an instance of `MethodExpressionValidator`.
    `void` | `setValueChangeListener(MethodBinding valueChangeMethod)` Deprecated. Use `addValueChangeListener(javax.faces.event.ValueChangeListener)` instead, obtaining the argument `ValueChangeListener` by creating an instance of `MethodExpressionValueChangeListener`.

    - ### Methods inherited from interface javax.faces.component.ValueHolder

      `getConverter, getLocalValue, getValue, setConverter, setValue`

- - ### Method Detail

    - #### getSubmittedValue

          Object getSubmittedValue()

      Return the submittedValue value of this component. This method should only be used by the `encodeBegin()` and/or `encodeEnd()` methods of this component, or its corresponding `Renderer`. The action taken based on whether the value is `null`, empty, or non-`null` is determined based on the value of the `javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL`context-param.

    - #### resetValue

          void resetValue()

      Convenience method to reset this component's value to the un-initialized state.

      Since:
        2.0

    - #### setSubmittedValue

          void setSubmittedValue(Object submittedValue)

      Set the submittedValue value of this component. This method should only be used by the `decode()` and `validate()` method of this component, or its corresponding `Renderer`. The action taken based on whether the value is `null`, empty, or non-`null` is determined based on the value of the `javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL`context-param.

      Parameters:
        `submittedValue` - The new submitted value

    - #### isLocalValueSet

          boolean isLocalValueSet()

      Return the "local value set" state for this component. Calls to `setValue()` automatically reset this property to `true`.

    - #### setLocalValueSet

          void setLocalValueSet(boolean localValueSet)

      Sets the "local value set" state for this component.

    - #### isValid

          boolean isValid()

      Return a flag indicating whether the local value of this component is valid (no conversion error has occurred).

    - #### setValid

          void setValid(boolean valid)

      Set a flag indicating whether the local value of this component is valid (no conversion error has occurred).

      Parameters:
        `valid` - The new valid flag

    - #### isRequired

          boolean isRequired()

      Return the "required field" state for this component.

    - #### setRequired

          void setRequired(boolean required)

      Set the "required field" state for this component.

      Parameters:
        `required` - The new "required field" state

    - #### isImmediate

          boolean isImmediate()

      Return the "immediate" state for this component.

    - #### setImmediate

          void setImmediate(boolean immediate)

      Set the "immediate" state for this component. When set to true, the component's value will be converted and validated immediately in the Apply Request Values phase, and `ValueChangeEvent`s will be delivered in that phase as well. The default value for this property must be `false`.

      Parameters:
        `immediate` - The new "immediate" state

    - #### getValidator

          MethodBinding getValidator()

      Deprecated. `getValidators()` should be used instead.

      If `setValidator(javax.faces.el.MethodBinding)` was not previously called for this instance, this method must return `null`. If it was called, this method must return the exact `MethodBinding` instance that was passed to `setValidator(javax.faces.el.MethodBinding)`.

      This method will be called during the Process Validations or Apply Request Values phases (depending on the value of the `immediate` property).

    - #### setValidator

          void setValidator(MethodBinding validatorBinding)

      Deprecated. Use `addValidator(javax.faces.validator.Validator)` instead, obtaining the argument `Validator` by creating an instance of `MethodExpressionValidator`.

      Wrap the argument `validatorBinding` in an implementation of `Validator` and store it in the internal data structure that backs the `getValidators()` method, taking care to over-write any instance that was stored by a previous call to `setValidator`.

      The argument method will be called during the Process Validations or Apply Request Values phases (depending on the value of the `immediate` property).

      Any method referenced by such an expression must be public, with a return type of `void`, and accept parameters of type `FacesContext`, `UIComponent`, and `Object`.

      Parameters:
        `validatorBinding` - The new `MethodBinding` instance

    - #### getValueChangeListener

          MethodBinding getValueChangeListener()

      Deprecated. Use `getValueChangeListeners()` instead.

      If `setValueChangeListener(javax.faces.el.MethodBinding)` was not previously called for this instance, this method must return `null`. If it was called, this method must return the exact `MethodBinding` instance that was passed to `setValueChangeListener(javax.faces.el.MethodBinding)`.

    - #### setValueChangeListener

          void setValueChangeListener(MethodBinding valueChangeMethod)

      Deprecated. Use `addValueChangeListener(javax.faces.event.ValueChangeListener)` instead, obtaining the argument `ValueChangeListener` by creating an instance of `MethodExpressionValueChangeListener`.

      Wrap the argument `valueChangeMethod` in an implementation of `ValueChangeListener` and store it in the internal data structure that backs the `getValueChangeListeners()` method, taking care to over-write any instance that was stored by a previous call to `setValueChangeListener`.

      This argument method will be called during the Process Validations or Apply Request Values phases (depending on the value of the `immediate` property).

      Any method referenced by such an expression must be public, with a return type of `void`, and accept a parameter of type `ValueChangeEvent`.

      Parameters:
        `valueChangeMethod` - The new method binding instance

    - #### addValidator

          void addValidator(Validator validator)

      Add a `Validator` instance to the set associated with this component.

      Parameters:
        `validator` - The `Validator` to add
      Throws:
        `NullPointerException` - if `validator` is null

    - #### getValidators

          Validator[] getValidators()

      Return the set of registered `Validator`s for this component instance. If there are no registered validators, a zero-length array is returned.

    - #### removeValidator

          void removeValidator(Validator validator)

      Remove a `Validator` instance from the set associated with this component, if it was previously associated. Otherwise, do nothing.

      Parameters:
        `validator` - The `Validator` to remove

    - #### addValueChangeListener

          void addValueChangeListener(ValueChangeListener listener)

      Add a new `ValueChangeListener` to the set of listeners interested in being notified when `ValueChangeEvent`s occur.

      Parameters:
        `listener` - The `ValueChangeListener` to be added
      Throws:
        `NullPointerException` - if `listener` is `null`

    - #### getValueChangeListeners

          ValueChangeListener[] getValueChangeListeners()

      Return the set of registered `ValueChangeListener`s for this component instance. If there are no registered listeners, a zero-length array is returned.

    - #### removeValueChangeListener

          void removeValueChangeListener(ValueChangeListener listener)

      Remove an existing `ValueChangeListener` (if any) from the set of listeners interested in being notified when `ValueChangeEvent`s occur.

      Parameters:
        `listener` - The `ValueChangeListener` to be removed
      Throws:
        `NullPointerException` - if `listener` is `null`

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