javax.faces.component
Class UIViewRoot

java.lang.Object
  |
  +--javax.faces.component.UIComponent
        |
        +--javax.faces.component.UIComponentBase
              |
              +--javax.faces.component.UIViewRoot
All Implemented Interfaces:
StateHolder

public class UIViewRoot
extends UIComponentBase

UIViewRoot is the UIComponent that represents the root of the UIComponent tree. This component has no rendering, it just serves as the root of the component tree.


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 UNIQUE_ID_PREFIX
          The prefix that will be used for identifiers generated by the createUniqueId() method.
 
Constructor Summary
UIViewRoot()
          Create a new UIViewRoot instance with default property values.
 
Method Summary
 java.lang.String createUniqueId()
          Generate an identifier for a component.
 void encodeBegin(javax.faces.context.FacesContext context)
          Override the default UIComponentBase.encodeBegin(javax.faces.context.FacesContext) behavior to reset the mechanism used in createUniqueId() before falling through to the standard superclass processing.
 java.lang.String getFamily()
          Return the identifier of the component family to which this component belongs.
 java.util.Locale getLocale()
          Return the Locale to be used in localizing the response being created for this view.
 java.lang.String getRenderKitId()
          Return the render kit identifier of the RenderKit associated with this view.
 java.lang.String getViewId()
          Return the view identifier for this view.
 void processApplication(javax.faces.context.FacesContext context)
          Broadcast any events that have been queued for the Invoke Application phase of the request processing lifecycle.
 void processDecodes(javax.faces.context.FacesContext context)
          Override the default UIComponentBase.processDecodes(javax.faces.context.FacesContext) behavior to broadcast any queued events after the default processing has been completed and to clear out any events for later phases if the event processing for this phase caused FacesContext.renderResponse() to be called.
 void processUpdates(javax.faces.context.FacesContext context)
          Override the default UIComponentBase behavior to broadcast any queued events after the default processing has been completed.
 void processValidators(javax.faces.context.FacesContext context)
          Override the default UIComponentBase.processValidators(javax.faces.context.FacesContext) behavior to broadcast any queued events after the default processing has been completed and to clear out any events for later phases if the event processing for this phase caused FacesContext.renderResponse() to be called.
 void queueEvent(javax.faces.event.FacesEvent event)
          Override the default UIComponentBase.queueEvent(javax.faces.event.FacesEvent) behavior to accumulate the queued events for later broadcaster.
 void restoreState(javax.faces.context.FacesContext context, java.lang.Object state)
           Perform any processing required to restore the state from the entries in the state Object.
 java.lang.Object saveState(javax.faces.context.FacesContext context)
           Gets the state of the instance as a Serializable Object.
 void setLocale(java.util.Locale locale)
          Set the Locale to be used in localizing the response being created for this view.
 void setRenderKitId(java.lang.String renderKitId)
          Set the render kit identifier of the RenderKit associated with this view.
 void setViewId(java.lang.String viewId)
          Set the view identifier for this view.
 
Methods inherited from class javax.faces.component.UIComponentBase
addFacesListener, broadcast, decode, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientId, getFacesContext, getFacesListeners, getFacet, getFacets, getFacetsAndChildren, getId, getParent, getRenderer, getRendererType, getRendersChildren, getValueBinding, isRendered, isTransient, processRestoreState, processSaveState, removeFacesListener, restoreAttachedState, saveAttachedState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding
 
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 java.lang.String COMPONENT_TYPE

The standard component type for this component.

See Also:
Constant Field Values

COMPONENT_FAMILY

public static final java.lang.String COMPONENT_FAMILY

The standard component family for this component.

See Also:
Constant Field Values

UNIQUE_ID_PREFIX

public static final java.lang.String UNIQUE_ID_PREFIX

The prefix that will be used for identifiers generated by the createUniqueId() method.

See Also:
Constant Field Values
Constructor Detail

UIViewRoot

public UIViewRoot()

Create a new UIViewRoot instance with default property values.

Method Detail

getFamily

public java.lang.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

getRenderKitId

public java.lang.String getRenderKitId()

Return the render kit identifier of the RenderKit associated with this view. Unless explicitly set, this will be the value defined by RenderKitFactory.HTML_BASIC_RENDER_KIT.


setRenderKitId

public void setRenderKitId(java.lang.String renderKitId)

Set the render kit identifier of the RenderKit associated with this view. This method may be called at any time between the end of Apply Request Values phase of the request processing lifecycle (i.e. when events are being broadcast) and the beginning of the Render Response phase.

Parameters:
renderKitId - The new RenderKit identifier, or null to disassociate this view with any specific RenderKit instance

getViewId

public java.lang.String getViewId()

Return the view identifier for this view.


setViewId

public void setViewId(java.lang.String viewId)

Set the view identifier for this view.

Parameters:
viewId - The new view identifier

queueEvent

public void queueEvent(javax.faces.event.FacesEvent event)

Override the default UIComponentBase.queueEvent(javax.faces.event.FacesEvent) behavior to accumulate the queued events for later broadcaster.

Overrides:
queueEvent in class UIComponentBase
Parameters:
event - FacesEvent to be queued
Throws:
java.lang.IllegalStateException - if this component is not a descendant of a UIViewRoot
java.lang.NullPointerException - if event is null

processDecodes

public void processDecodes(javax.faces.context.FacesContext context)

Override the default UIComponentBase.processDecodes(javax.faces.context.FacesContext) behavior to broadcast any queued events after the default processing has been completed and to clear out any events for later phases if the event processing for this phase caused FacesContext.renderResponse() to be called.

Overrides:
processDecodes in class UIComponentBase
Parameters:
context - FacesContext for the request we are processing
Throws:
java.lang.NullPointerException - if context is null

encodeBegin

public void encodeBegin(javax.faces.context.FacesContext context)
                 throws java.io.IOException

Override the default UIComponentBase.encodeBegin(javax.faces.context.FacesContext) behavior to reset the mechanism used in createUniqueId() before falling through to the standard superclass processing.

Overrides:
encodeBegin in class UIComponentBase
java.io.IOException

processValidators

public void processValidators(javax.faces.context.FacesContext context)

Override the default UIComponentBase.processValidators(javax.faces.context.FacesContext) behavior to broadcast any queued events after the default processing has been completed and to clear out any events for later phases if the event processing for this phase caused FacesContext.renderResponse() to be called.

Overrides:
processValidators in class UIComponentBase
Parameters:
context - FacesContext for the request we are processing
Throws:
java.lang.NullPointerException - if context is null

processUpdates

public void processUpdates(javax.faces.context.FacesContext context)

Override the default UIComponentBase behavior to broadcast any queued events after the default processing has been completed.

Overrides:
processUpdates in class UIComponentBase
Parameters:
context - FacesContext for the request we are processing
Throws:
java.lang.NullPointerException - if context is null

processApplication

public void processApplication(javax.faces.context.FacesContext context)

Broadcast any events that have been queued for the Invoke Application phase of the request processing lifecycle.

Parameters:
context - FacesContext for the request we are processing
Throws:
java.lang.NullPointerException - if context is null

createUniqueId

public java.lang.String createUniqueId()

Generate an identifier for a component. The identifier will be prefixed with UNIQUE_ID_PREFIX, and will be unique within this UIViewRoot.


getLocale

public java.util.Locale getLocale()

Return the Locale to be used in localizing the response being created for this view.

Algorithm:

If we have a locale ivar, return it. If we have a value binding for "locale", get its value. If the value is null, return the result of calling ViewHandler.calculateLocale(javax.faces.context.FacesContext). If the value is an instance of java.util.Locale return it. If the value is a String, convert it to a java.util.Locale and return it. If there is no value binding for "locale", return the result of calling ViewHandler.calculateLocale(javax.faces.context.FacesContext).

Returns:
The current Locale obtained by executing the above algorithm.

setLocale

public void setLocale(java.util.Locale locale)

Set the Locale to be used in localizing the response being created for this view.

Parameters:
locale - The new localization Locale

saveState

public java.lang.Object saveState(javax.faces.context.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(javax.faces.context.FacesContext context,
                         java.lang.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.

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


Copyright ? 2002-2004 Sun Microsystems, Inc. All Rights Reserved.