javax.faces.component

## Class UIOutput

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

- All Implemented Interfaces:
    EventListener, PartialStateHolder, StateHolder, TransientStateHolder, ValueHolder, ComponentSystemEventListener, FacesListener, SystemEventListenerHolder
  Direct Known Subclasses:
    HtmlBody, HtmlDoctype, HtmlHead, HtmlOutputFormat, HtmlOutputLabel, HtmlOutputLink, HtmlOutputText, UIInput, UIOutcomeTarget

      public class UIOutput
      extends UIComponentBase
      implements ValueHolder

  UIOutput is a `UIComponent` that has a value, optionally retrieved from a model tier bean via a value expression, that is displayed to the user. The user cannot directly modify the rendered value; it is for display purposes only.

  During the Render Response phase of the request processing lifecycle, the current value of this component must be converted to a String (if it is not already), according to the following rules:

  - If the current value is not `null`, and is not already a `String`, locate a `Converter` (if any) to use for the conversion, as follows:
    - If `getConverter()` returns a non-null `Converter`, use that one, otherwise
    - If `Application.createConverter(Class)`, passing the current value's class, returns a non-null `Converter`, use that one.
  - If the current value is not `null` and a `Converter` was located, call its `getAsString()` method to perform the conversion.
  - If the current value is not `null` but no `Converter` was located, call `toString()` on the current value to perform the conversion.

  By default, the `rendererType` property must be set to "`javax.faces.Text`". 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.

    - ### 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
    `UIOutput()` Create a new `UIOutput` instance with default property values.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `clearInitialState()` For each of the attached objects on this instance that implement `PartialStateHolder`, call `PartialStateHolder.clearInitialState()` on the attached object.
    `Converter` | `getConverter()` Return the `Converter` (if any) that is registered for this `UIComponent`.
    `String` | `getFamily()` Return the identifier of the component family to which this component belongs.
    `Object` | `getLocalValue()` Return the local value of this `UIComponent` (if any), without evaluating any associated `ValueExpression`.
    `Object` | `getValue()` Return the value property.
    `void` | `markInitialState()` In addition to the actions taken in `UIComponentBase` when `PartialStateHolder.markInitialState()` is called, check if the installed `Converter` is a PartialStateHolder and if it is, call `PartialStateHolder.markInitialState()` on it.
    `void` | `resetValue()` Convenience method to reset this component's value to the un-initialized state.
    `void` | `restoreState(FacesContext context, Object state)` Perform any processing required to restore the state from the entries in the state Object.
    `Object` | `saveState(FacesContext context)` Gets the state of the instance as a `Serializable` Object.
    `void` | `setConverter(Converter converter)` Set the `Converter` (if any) that is registered for this `UIComponent`.
    `void` | `setValue(Object value)` Set the value of this `UIComponent` (if any).

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

      `addClientBehavior, addFacesListener, broadcast, decode, 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, processDecodes, processRestoreState, processSaveState, processUpdates, processValidators, 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`

- - ### 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

  - ### Constructor Detail

    - #### UIOutput

          public UIOutput()

      Create a new `UIOutput` 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.

      Specified by:
        `getFamily` in class `UIComponent`

    - #### getConverter

          public Converter getConverter()

      Description copied from interface: `ValueHolder`

      Return the `Converter` (if any) that is registered for this `UIComponent`.

      Specified by:
        `getConverter` in interface `ValueHolder`

    - #### setConverter

          public void setConverter(Converter converter)

      Description copied from interface: `ValueHolder`

      Set the `Converter` (if any) that is registered for this `UIComponent`.

      Specified by:
        `setConverter` in interface `ValueHolder`
      Parameters:
        `converter` - New `Converter` (or `null`)

    - #### getLocalValue

          public Object getLocalValue()

      Description copied from interface: `ValueHolder`

      Return the local value of this `UIComponent` (if any), without evaluating any associated `ValueExpression`.

      Specified by:
        `getLocalValue` in interface `ValueHolder`

    - #### getValue

          public Object getValue()

      Return the value property.

      Specified by:
        `getValue` in interface `ValueHolder`
      Since:
        2.2

    - #### setValue

          public void setValue(Object value)

      Description copied from interface: `ValueHolder`

      Set the value of this `UIComponent` (if any).

      Specified by:
        `setValue` in interface `ValueHolder`
      Parameters:
        `value` - The new local value

    - #### resetValue

          public void resetValue()

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

      Since:
        2.2

    - #### markInitialState

          public void markInitialState()

      In addition to the actions taken in `UIComponentBase` when `PartialStateHolder.markInitialState()` is called, check if the installed `Converter` is a PartialStateHolder and if it is, call `PartialStateHolder.markInitialState()` on it.

      Specified by:
        `markInitialState` in interface `PartialStateHolder`
      Overrides:
        `markInitialState` in class `UIComponentBase`

    - #### clearInitialState

          public void clearInitialState()

      Description copied from class: `UIComponentBase`

      For each of the attached objects on this instance that implement `PartialStateHolder`, call `PartialStateHolder.clearInitialState()` on the attached object.

      Specified by:
        `clearInitialState` in interface `PartialStateHolder`
      Overrides:
        `clearInitialState` in class `UIComponentBase`

    - #### saveState

          public Object saveState(FacesContext context)

      Description copied from interface: `StateHolder`

      Gets the state of the instance as a `Serializable` Object.

      If the class that implements this interface has references to instances that implement StateHolder (such as a `UIComponent` with event handlers, validators, etc.) this method must call the `StateHolder.saveState(javax.faces.context.FacesContext)` method on all those instances as well. This method must not save the state of children and facets. That is done via the `StateManager`

      This method must not alter the state of the implementing object. In other words, after executing this code:

      `

           Object state = component.saveState(facesContext);

      `

      `component` should be the same as before executing it.

      The return from this method must be `Serializable`

      Specified by:
        `saveState` in interface `StateHolder`
      Overrides:
        `saveState` in class `UIComponentBase`

    - #### restoreState

          public void restoreState(FacesContext context,
                          Object state)

      Description copied from interface: `StateHolder`

      Perform any processing required to restore the state from the entries in the state Object.

      If the class that implements this interface has references to instances that also implement StateHolder (such as a `UIComponent` with event handlers, validators, etc.) this method must call the `StateHolder.restoreState(javax.faces.context.FacesContext, java.lang.Object)` method on all those instances as well.

      If the `state` argument is `null`, take no action and return.

      Specified by:
        `restoreState` in interface `StateHolder`
      Overrides:
        `restoreState` in class `UIComponentBase`

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