Home » Mojarra-2.0.1 » javax » faces » render » [javadoc | source]
javax.faces.render
abstract public class: Renderer [javadoc | source]
java.lang.Object
   javax.faces.render.Renderer

A Renderer converts the internal representation of UIComponent s into the output stream (or writer) associated with the response we are creating for a particular request. Each Renderer knows how to render one or more UIComponent types (or classes), and advertises a set of render-dependent attributes that it recognizes for each supported UIComponent .

Families of Renderer s are packaged as a RenderKit , and together support the rendering of all of the UIComponent s in a view associated with a FacesContext . Within the set of Renderer s for a particular RenderKit , each must be uniquely identified by the rendererType property.

Individual Renderer instances will be instantiated as requested during the rendering process, and will remain in existence for the remainder of the lifetime of a web application. Because each instance may be invoked from more than one request processing thread simultaneously, they MUST be programmed in a thread-safe manner.

If the javax.faces.event.ListenerFor annotation is attached to the class definition of a Renderer, that class must also implement javax.faces.event.ComponentSystemEventListener , and the action pertaining to the processing of ResourceDependency on a Renderer described in javax.faces.event.ListenerFor must be taken.

If the javax.faces.application.ResourceDependency annotation is attached to the class definition of a Renderer, the action pertaining to the processing of ResourceDependency on a Renderer described in UIComponent#getChildren must be taken.

Method from javax.faces.render.Renderer Summary:
convertClientId,   decode,   encodeBegin,   encodeChildren,   encodeEnd,   getConvertedValue,   getRendersChildren
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from javax.faces.render.Renderer Detail:
 public String convertClientId(FacesContext context,
    String clientId) 

    Convert the component generated client id to a form suitable for transmission to the client.

    The default implementation returns the argument clientId unchanged.

 public  void decode(FacesContext context,
    UIComponent component) 

    Decode any new state of the specified UIComponent from the request contained in the specified FacesContext , and store that state on the UIComponent .

    During decoding, events may be enqueued for later processing (by event listeners that have registered an interest), by calling queueEvent() on the associated UIComponent .

 public  void encodeBegin(FacesContext context,
    UIComponent component) throws IOException 

    Render the beginning specified UIComponent to the output stream or writer associated with the response we are creating. If the conversion attempted in a previous call to getConvertedValue() for this component failed, the state information saved during execution of decode() should be used to reproduce the incorrect input.

 public  void encodeChildren(FacesContext context,
    UIComponent component) throws IOException 

    Render the child components of this UIComponent , following the rules described for encodeBegin() to acquire the appropriate value to be rendered. This method will only be called if the rendersChildren property of this component is true.

 public  void encodeEnd(FacesContext context,
    UIComponent component) throws IOException 

    Render the ending of the current state of the specified UIComponent , following the rules described for encodeBegin() to acquire the appropriate value to be rendered.

 public Object getConvertedValue(FacesContext context,
    UIComponent component,
    Object submittedValue) throws ConverterException 

    Attempt to convert previously stored state information into an object of the type required for this component (optionally using the registered javax.faces.convert.Converter for this component, if there is one). If conversion is successful, the new value should be returned from this method; if not, a ConverterException should be thrown.

 public boolean getRendersChildren() 

    Return a flag indicating whether this Renderer is responsible for rendering the children the component it is asked to render. The default implementation returns false.