All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.myfaces-metadata.xml Maven / Gradle / Ivy

Go to download

The private implementation classes of the Apache MyFaces Core JSF-2.0 Implementation

There is a newer version: 4.1.0-RC2
Show newest version
<?xml version='1.0' ?>

<model>
  <modelId>myfaces-impl</modelId>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIComponent</className>
    <sourceClassName>javax.faces.component.UIComponent</sourceClassName>
    <type>javax.faces.Component</type>
    <family>javax.faces.Component</family>
    <configExcluded>true</configExcluded>
    <implementedInterfaces>
      <interface name="javax.faces.component.PartialStateHolder"/>
      <interface name="javax.faces.event.ComponentSystemEventListener"/>
      <interface name="javax.faces.event.SystemEventListenerHolder"/>
    </implementedInterfaces>
    <desc>abstract base component</desc>
    <longDesc>
<![CDATA[
see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">J
SF Specification</a>
]]>
    </longDesc>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIComponentBase</className>
    <parentClassName>javax.faces.component.UIComponent</parentClassName>
    <sourceClassName>javax.faces.component.UIComponentBase</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponent</sourceClassParentClassName>
    <type>javax.faces.ComponentBase</type>
    <family>javax.faces.ComponentBase</family>
    <tagClass>javax.faces.webapp.UIComponentELTag</tagClass>
    <configExcluded>true</configExcluded>
    <desc>base component when all components must inherit</desc>
    <longDesc>
<![CDATA[
TODO: IMPLEMENT HERE - Delta state saving support

Standard implementation of the UIComponent base class; all standard JSF components extend this class.
<p>
<i>Disclaimer</i>: The official definition for the behaviour of this class is the JSF 1.1 specification but for legal
reasons the specification cannot be replicated here. Any javadoc here therefore describes the current implementation
rather than the spec, though this class has been verified as correctly implementing the spec.

see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a> for
more.
]]>
    </longDesc>
    <property>
      <name>id</name>
      <className>java.lang.String</className>
      <desc>Get a string which uniquely identifies this UIComponent within the scope of the nearest ancestor NamingContainer
component</desc>
      <longDesc>Get a string which uniquely identifies this UIComponent within the scope of the nearest ancestor NamingContainer
component. The id is not necessarily unique across all components in the current view.</longDesc>
      <rtexprvalue>true</rtexprvalue>
    </property>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>A boolean value that indicates whether this component should be rendered</desc>
      <longDesc>A boolean value that indicates whether this component should be rendered. Default value: true.</longDesc>
    </property>
    <property>
      <name>transient</name>
      <className>boolean</className>
      <literalOnly>true</literalOnly>
      <transient>true</transient>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>binding</name>
      <className>javax.faces.component.UIComponent</className>
      <desc>backing bean property to bind to this component instance</desc>
      <longDesc>Identifies a backing bean property (of type UIComponent or appropriate subclass) to bind to this component instance. This value must be an EL expression.</longDesc>
      <generated>false</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIColumn</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component.UIColumn</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>javax.faces.Column</type>
    <family>javax.faces.Column</family>
    <facet>
      <name>footer</name>
      <desc>no description</desc>
    </facet>
    <facet>
      <name>header</name>
      <desc>no description</desc>
    </facet>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
    <property>
      <name>id</name>
      <className>java.lang.String</className>
      <literalOnly>true</literalOnly>
      <desc>Get a string which uniquely identifies this UIComponent within the scope of the nearest ancestor NamingContainer
component</desc>
      <longDesc>Get a string which uniquely identifies this UIComponent within the scope of the nearest ancestor NamingContainer
component. The id is not necessarily unique across all components in the current view.</longDesc>
      <rtexprvalue>false</rtexprvalue>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UICommand</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component.UICommand</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>javax.faces.Command</type>
    <family>javax.faces.Command</family>
    <rendererType>javax.faces.Button</rendererType>
    <listener>
      <name>actionListeners</name>
      <className>javax.faces.event.ActionListener</className>
      <eventClassName>javax.faces.event.ActionEvent</eventClassName>
      <desc>Event delivered when the "action" of the component has been
invoked; for example, by clicking on a button</desc>
      <longDesc>Event delivered when the "action" of the component has been
invoked; for example, by clicking on a button. The action may result 
in page navigation.</longDesc>
      <phases>Invoke Application, Apply Request Values</phases>
    </listener>
    <implementedInterfaces>
      <interface name="javax.faces.component.ActionSource2"/>
    </implementedInterfaces>
    <desc>UICommand is a base abstraction for components that implement ActionSource</desc>
    <longDesc>UICommand is a base abstraction for components that implement ActionSource.</longDesc>
    <property>
      <name>immediate</name>
      <className>boolean</className>
      <desc>A boolean value that identifies the phase during which action events
should fire</desc>
      <longDesc>
<![CDATA[
A boolean value that identifies the phase during which action events
should fire.
<p>
During normal event processing, action methods and action listener methods are fired during the
"invoke application" phase of request processing. If this attribute is set to "true", these methods
are fired instead at the end of the "apply request values" phase.
</p>
]]>
      </longDesc>
    </property>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>The text to display to the user for this command component</desc>
      <longDesc>The text to display to the user for this command component.</longDesc>
    </property>
    <property>
      <name>actionExpression</name>
      <jspName>action</jspName>
      <className>javax.el.MethodExpression</className>
      <stateHolder>true</stateHolder>
      <desc>The action to take when this command is invoked</desc>
      <longDesc>
<![CDATA[
The action to take when this command is invoked.
<p>
If the value is an expression, it is expected to be a method binding EL expression that identifies
an action method. An action method accepts no parameters and has a String return value, called the
action outcome, that identifies the next view displayed. The phase that this event is fired in
can be controlled via the immediate attribute.
</p>
<p> 
If the value is a string literal, it is treated as a navigation outcome for the current view. This
is functionally equivalent to a reference to an action method that returns the string literal.
</p>
]]>
      </longDesc>
      <methodBindingSignature>
        <returnType>java.lang.Object</returnType>
      </methodBindingSignature>
      <clientEvent>action</clientEvent>
    </property>
    <property>
      <name>actionListener</name>
      <className>javax.faces.el.MethodBinding</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <methodBindingSignature>
        <returnType>void</returnType>
        <parameterType>javax.faces.event.ActionEvent</parameterType>
      </methodBindingSignature>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIData</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component.UIData</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>javax.faces.Data</type>
    <family>javax.faces.Data</family>
    <rendererType>javax.faces.Table</rendererType>
    <facet>
      <name>footer</name>
      <desc>no description</desc>
    </facet>
    <facet>
      <name>header</name>
      <desc>no description</desc>
    </facet>
    <implementedInterfaces>
      <interface name="javax.faces.component.UniqueIdVendor"/>
    </implementedInterfaces>
    <desc>Represents an abstraction of a component which has multiple "rows" of data</desc>
    <longDesc>
<![CDATA[
Represents an abstraction of a component which has multiple "rows" of data.
<p>
The children of this component are expected to be UIColumn components.
<p>
Note that the same set of child components are reused to implement each row of the table in turn during such phases
as apply-request-values and render-response. Altering any of the members of these components therefore affects the
attribute for every row, except for the following members:
<ul>
<li>submittedValue
<li>value (where no EL binding is used)
<li>valid
</ul>
<p>
This reuse of the child components also means that it is not possible to save a reference to a component during table
processing, then access it later and expect it to still represent the same row of the table.
<h1>
Implementation Notes</h1>
<p>
Each of the UIColumn children of this component has a few component children of its own to render the contents of the
table cell. However there can be a very large number of rows in a table, so it isn't efficient for the UIColumn and
all its child objects to be duplicated for each row in the table. Instead the "flyweight" pattern is used where a
serialized state is held for each row. When setRowIndex is invoked, the UIColumn objects and their children serialize
their current state then reinitialise themselves from the appropriate saved state. This allows a single set of real
objects to represent multiple objects which have the same types but potentially different internal state. When a row
is selected for the first time, its state is set to a clean "initial" state. Transient components (including any
read-only component) do not save their state; they are just reinitialised as required. The state saved/restored when
changing rows is not the complete component state, just the fields that are expected to vary between rows:
"submittedValue", "value", "isValid".
</p>
<p>
Note that a table is a "naming container", so that components within the table have their ids prefixed with the id of
the table. Actually, when setRowIndex has been called on a table with id of "zzz" the table pretends to its children
that its ID is "zzz_n" where n is the row index. This means that renderers for child components which call
component.getClientId automatically get ids of form "zzz_n:childId" thus ensuring that components in different rows
of the table get different ids.
</p>
<p>
When decoding a submitted page, this class iterates over all its possible rowIndex values, restoring the appropriate
serialized row state then calling processDecodes on the child components. Because the child components (or their
renderers) use getClientId to get the request key to look for parameter data, and because this object pretends to
have a different id per row ("zzz_n") a single child component can decode data from each table row in turn without
being aware that it is within a table. The table's data model is updated before each call to child.processDecodes, so
the child decode method can assume that the data model's rowData points to the model object associated with the row
currently being decoded. Exactly the same process applies for the later validation and updateModel phases.
</p>
<p>
When the data model for the table is bound to a backing bean property, and no validation errors have occured during
processing of a postback, the data model is refetched at the start of the rendering phase (ie after the update model
phase) so that the contents of the data model can be changed as a result of the latest form submission. Because the
saved row state must correspond to the elements within the data model, the row state must be discarded whenever a new
data model is fetched; not doing this would cause all sorts of inconsistency issues. This does imply that changing
the state of any of the members "submittedValue", "value" or "valid" of a component within the table during the
invokeApplication phase has no effect on the rendering of the table. When a validation error has occurred, a new
DataModel is <i>not</i> fetched, and the saved state of the child components is <i>not</i> discarded.
</p>
see Javadoc of the <a href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
for more information.
]]>
    </longDesc>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>An EL expression that specifies the data model that backs this table</desc>
      <longDesc>
<![CDATA[
An EL expression that specifies the data model that backs this table.
<p>
The value referenced by the EL expression can be of any type.
</p>
<ul>
<li>A value of type DataModel is used directly.</li>
<li>Array-like parameters of type array-of-Object, java.util.List, java.sql.ResultSet or
javax.servlet.jsp.jstl.sql.Result are wrapped in a corresponding DataModel that knows how to iterate over the
elements.</li>
<li>Other values are wrapped in a DataModel as a single row.</li>
</ul>
<p>
Note in particular that unordered collections, eg Set are not supported. Therefore if the value expression
references such an object then the table will be considered to contain just one element - the collection itself.
</p>
]]>
      </longDesc>
    </property>
    <property>
      <name>first</name>
      <className>int</className>
      <desc>Defines the index of the first row to be displayed, starting from 0</desc>
      <longDesc>Defines the index of the first row to be displayed, starting from 0.</longDesc>
    </property>
    <property>
      <name>rows</name>
      <className>int</className>
      <desc>Defines the maximum number of rows of data to be displayed</desc>
      <longDesc>
<![CDATA[
Defines the maximum number of rows of data to be displayed.
<p>
Specify zero to display all rows from the "first" row to the end of available data.
</p>
]]>
      </longDesc>
    </property>
    <property>
      <name>var</name>
      <className>java.lang.String</className>
      <literalOnly>true</literalOnly>
      <desc>Defines the name of the request-scope variable that will hold the current row during iteration</desc>
      <longDesc>
<![CDATA[
Defines the name of the request-scope variable that will hold the current row during iteration.
<p>
During rendering of child components of this UIData, the variable with this name can be read to learn what the
"rowData" object for the row currently being rendered is.
</p>
<p>
This value must be a static value, ie an EL expression is not permitted.
</p>
]]>
      </longDesc>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIForm</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component.UIForm</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>javax.faces.Form</type>
    <family>javax.faces.Form</family>
    <rendererType>javax.faces.Form</rendererType>
    <implementedInterfaces>
      <interface name="javax.faces.component.UniqueIdVendor"/>
    </implementedInterfaces>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
    <property>
      <name>prependId</name>
      <className>boolean</className>
      <desc>no description</desc>
      <defaultValue>true</defaultValue>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIGraphic</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component.UIGraphic</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>javax.faces.Graphic</type>
    <family>javax.faces.Graphic</family>
    <rendererType>javax.faces.Image</rendererType>
    <desc>Displays a graphical image</desc>
    <longDesc>
<![CDATA[
Displays a graphical image.
<p>
See the javadoc for this class in the
<a href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
for further details.
]]>
    </longDesc>
    <property>
      <name>url</name>
      <className>java.lang.String</className>
      <desc>An alias for the "value" attribute</desc>
      <longDesc>An alias for the "value" attribute.</longDesc>
    </property>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>The URL of the image</desc>
      <longDesc>
<![CDATA[
The URL of the image.
<p>
If the URL starts with a '/', it is relative to the context path of the web application.
</p>
]]>
      </longDesc>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIOutput</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component.UIOutput</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>javax.faces.Output</type>
    <family>javax.faces.Output</family>
    <rendererType>javax.faces.Text</rendererType>
    <implementedInterfaces>
      <interface name="javax.faces.component.ValueHolder"/>
    </implementedInterfaces>
    <desc>Displays a value to the user</desc>
    <longDesc>Displays a value to the user.</longDesc>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>Gets The initial value of this component</desc>
      <longDesc>Gets The initial value of this component.</longDesc>
    </property>
    <property>
      <name>converter</name>
      <className>javax.faces.convert.Converter</className>
      <partialStateHolder>true</partialStateHolder>
      <desc>An expression that specifies the Converter for this component</desc>
      <longDesc>
<![CDATA[
An expression that specifies the Converter for this component.
<p>
The value can either be a static value (ID) or an EL expression. When a static id is
specified, an instance of the converter type registered with that id is used. When this
is an EL expression, the result of evaluating the expression must be an object that
implements the Converter interface.
</p>
]]>
      </longDesc>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIInput</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>javax.faces.component.UIInput</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <type>javax.faces.Input</type>
    <family>javax.faces.Input</family>
    <rendererType>javax.faces.Text</rendererType>
    <listener>
      <name>valueChangeListeners</name>
      <className>javax.faces.event.ValueChangeListener</className>
      <eventClassName>javax.faces.event.ValueChangeEvent</eventClassName>
      <desc>The valueChange event is delivered when the value attribute
is changed</desc>
      <longDesc>The valueChange event is delivered when the value attribute
is changed.</longDesc>
    </listener>
    <implementedInterfaces>
      <interface name="javax.faces.component.EditableValueHolder"/>
    </implementedInterfaces>
    <desc>UICommand is a base abstraction for components that implement ActionSource</desc>
    <longDesc>
<![CDATA[
UICommand is a base abstraction for components that implement ActionSource.
<p>
See the javadoc for this class in the <a href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/index.html">JSF
Specification</a> for further details.
<p>
]]>
    </longDesc>
    <property>
      <name>immediate</name>
      <className>boolean</className>
      <desc>A boolean value that identifies the phase during which action events should fire</desc>
      <longDesc>
<![CDATA[
A boolean value that identifies the phase during which action events should fire.
<p>
During normal event processing, action methods and action listener methods are fired during the
"invoke application" phase of request processing. If this attribute is set to "true", these methods are fired
instead at the end of the "apply request values" phase.
</p>
]]>
      </longDesc>
    </property>
    <property>
      <name>required</name>
      <className>boolean</className>
      <desc>A boolean value that indicates whether an input value is required</desc>
      <longDesc>
<![CDATA[
A boolean value that indicates whether an input value is required.
<p>
If this value is true and no input value is provided by a postback operation, then the "requiredMessage" text is
registered as a FacesMessage for the request, and validation fails.
</p>
<p>
Default value: false.
</p>
]]>
      </longDesc>
      <defaultValue>false</defaultValue>
    </property>
    <property>
      <name>converterMessage</name>
      <className>java.lang.String</className>
      <desc>Text to be displayed to the user as an error message when conversion of a submitted value to the target type
fails</desc>
      <longDesc>
<![CDATA[
Text to be displayed to the user as an error message when conversion of a submitted value to the target type
fails.
<p>
</p>
]]>
      </longDesc>
    </property>
    <property>
      <name>requiredMessage</name>
      <className>java.lang.String</className>
      <desc>Text to be displayed to the user as an error message when this component is marked as "required" but no input
data is present during a postback (ie the user left the required field blank)</desc>
      <longDesc>Text to be displayed to the user as an error message when this component is marked as "required" but no input
data is present during a postback (ie the user left the required field blank).</longDesc>
    </property>
    <property>
      <name>validator</name>
      <className>javax.faces.el.MethodBinding</className>
      <stateHolder>true</stateHolder>
      <desc>A method-binding EL expression which is invoked during the validation phase for this component</desc>
      <longDesc>
<![CDATA[
A method-binding EL expression which is invoked during the validation phase for this component.
<p>
The invoked method is expected to check the submitted value for this component, and if not acceptable then report
a validation error for the component.
</p>
<p>
The method is expected to have the prototype
</p>
<code>public void aMethod(FacesContext, UIComponent,Object)</code>
]]>
      </longDesc>
      <methodBindingSignature>
        <returnType>void</returnType>
        <parameterType>javax.faces.context.FacesContext</parameterType>
        <parameterType>javax.faces.component.UIComponent</parameterType>
        <parameterType>java.lang.Object</parameterType>
      </methodBindingSignature>
    </property>
    <property>
      <name>validatorMessage</name>
      <className>java.lang.String</className>
      <desc>Text which will be shown if validation fails</desc>
      <longDesc>Text which will be shown if validation fails.</longDesc>
    </property>
    <property>
      <name>valueChangeListener</name>
      <className>javax.faces.el.MethodBinding</className>
      <stateHolder>true</stateHolder>
      <desc>A method which is invoked during postback processing for the current view if the submitted value for this
component is not equal to the value which the "value" expression for this component returns</desc>
      <longDesc>
<![CDATA[
A method which is invoked during postback processing for the current view if the submitted value for this
component is not equal to the value which the "value" expression for this component returns.
<p>
The phase in which this method is invoked can be controlled via the immediate attribute.
</p>
]]>
      </longDesc>
      <methodBindingSignature>
        <returnType>void</returnType>
        <parameterType>javax.faces.event.ValueChangeEvent</parameterType>
      </methodBindingSignature>
      <clientEvent>valueChange</clientEvent>
    </property>
    <property>
      <name>valid</name>
      <className>boolean</className>
      <desc>Specifies whether the component's value is currently valid, ie whether the validators attached to this component
have allowed it</desc>
      <longDesc>Specifies whether the component's value is currently valid, ie whether the validators attached to this component
have allowed it.</longDesc>
      <defaultValue>true</defaultValue>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>localValueSet</name>
      <className>boolean</className>
      <desc>Specifies whether a local value is currently set</desc>
      <longDesc>
<![CDATA[
Specifies whether a local value is currently set.
<p>
If false, values are being retrieved from any attached ValueBinding.
]]>
      </longDesc>
      <defaultValue>false</defaultValue>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>submittedValue</name>
      <className>java.lang.Object</className>
      <desc>Gets the current submitted value</desc>
      <longDesc>Gets the current submitted value. This value, if non-null, is set by the Renderer to store a possibly invalid
value for later conversion or redisplay, and has not yet been converted into the proper type for this component
instance. This method should only be used by the decode() and validate() method of this component, or its
corresponding Renderer; however, user code may manually set it to null to erase any submitted value.</longDesc>
      <tagExcluded>true</tagExcluded>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UINamingContainer</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component.UINamingContainer</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <name>f:subview</name>
    <type>javax.faces.NamingContainer</type>
    <bodyContent>JSP</bodyContent>
    <family>javax.faces.NamingContainer</family>
    <tagClass>org.apache.myfaces.taglib.core.SubviewTag</tagClass>
    <generatedTagClass>true</generatedTagClass>
    <implementedInterfaces>
      <interface name="javax.faces.component.UniqueIdVendor"/>
    </implementedInterfaces>
    <desc>Base class for components that provide a new "namespace" for the ids of their
child components</desc>
    <longDesc>
<![CDATA[
Base class for components that provide a new "namespace" for the ids of their
child components.
<p>
See the javadocs for interface NamingContainer for further details.
</p>
]]>
    </longDesc>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>no description</desc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </property>
    <property>
      <name>id</name>
      <required>true</required>
      <desc>no description</desc>
      <generated>false</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIOutcomeTarget</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>javax.faces.component.UIOutcomeTarget</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <type>javax.faces.OutcomeTarget</type>
    <family>javax.faces.OutcomeTarget</family>
    <desc>no description</desc>
    <longDesc></longDesc>
    <property>
      <name>outcome</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
    </property>
    <property>
      <name>includeViewParams</name>
      <className>boolean</className>
      <desc>no description</desc>
      <defaultValue>false</defaultValue>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIPanel</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component.UIPanel</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>javax.faces.Panel</type>
    <family>javax.faces.Panel</family>
    <desc>no description</desc>
    <longDesc></longDesc>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UISelectBoolean</className>
    <parentClassName>javax.faces.component.UIInput</parentClassName>
    <sourceClassName>javax.faces.component.UISelectBoolean</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIInput</sourceClassParentClassName>
    <type>javax.faces.SelectBoolean</type>
    <family>javax.faces.SelectBoolean</family>
    <rendererType>javax.faces.Checkbox</rendererType>
    <desc>A component that allows the user to select or unselect an object</desc>
    <longDesc>
<![CDATA[
A component that allows the user to select or unselect an object.
<p>
This can also be used to choose between two states such as true/false or on/off.
</p>
<p>
See the javadoc for this class in the
<a href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
for further details.
</p>
]]>
    </longDesc>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>no description</desc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UISelectMany</className>
    <parentClassName>javax.faces.component.UIInput</parentClassName>
    <sourceClassName>javax.faces.component.UISelectMany</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIInput</sourceClassParentClassName>
    <type>javax.faces.SelectMany</type>
    <family>javax.faces.SelectMany</family>
    <rendererType>javax.faces.Listbox</rendererType>
    <desc>Base class for the various component classes that allow a user to select zero or more options from a set</desc>
    <longDesc>
<![CDATA[
Base class for the various component classes that allow a user to select zero or more options from a set.
<p>
This is not an abstract class; java code can create an instance of this, configure its rendererType appropriately,
and add it to a view. However there is no tag class for this component, ie it cannot be added directly to a page when
using JSP (and other presentation technologies are expected to behave similarly). Instead, there is a family of
subclasses that extend this base functionality, and they do have tag classes.
</p>
<p>
See the javadoc for this class in the <a href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/index.html">JSF
Specification</a> for further details.
</p>
]]>
    </longDesc>
    <property>
      <name>hideNoSelectionOption</name>
      <className>boolean</className>
      <desc>no description</desc>
      <generated>false</generated>
    </property>
    <property>
      <name>collectionType</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <generated>false</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UISelectOne</className>
    <parentClassName>javax.faces.component.UIInput</parentClassName>
    <sourceClassName>javax.faces.component.UISelectOne</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIInput</sourceClassParentClassName>
    <type>javax.faces.SelectOne</type>
    <family>javax.faces.SelectOne</family>
    <rendererType>javax.faces.Menu</rendererType>
    <desc>Component for choosing one option out of a set of possibilities</desc>
    <longDesc>
<![CDATA[
Component for choosing one option out of a set of possibilities.
<p>
This component is expected to have children of type UISelectItem or UISelectItems; these define the set of possible
options that the user can choose from.
</p>
<p>
See the javadoc for this class in the <a
href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/api/index.html">JSF Specification</a> for further details.
</p>
]]>
    </longDesc>
    <property>
      <name>hideNoSelectionOption</name>
      <className>boolean</className>
      <desc>no description</desc>
      <generated>false</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIViewParameter</className>
    <parentClassName>javax.faces.component.UIInput</parentClassName>
    <sourceClassName>javax.faces.component.UIViewParameter</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIInput</sourceClassParentClassName>
    <name>f:viewParam</name>
    <type>javax.faces.ViewParameter</type>
    <bodyContent>JSP</bodyContent>
    <family>javax.faces.ViewParameter</family>
    <tagClass>org.apache.myfaces.taglib.core.ViewParamTag</tagClass>
    <generatedTagClass>true</generatedTagClass>
    <desc>TODO: documentation on jsp and pld are not the same</desc>
    <longDesc>TODO: documentation on jsp and pld are not the same. It appear two
params: maxlength and for, but no property getter and setter founded here. 
If maxlength is used, we can put something like this: 
JSFJspProperty(name = "maxlength", returnType = "java.lang.String")</longDesc>
    <property>
      <name>immediate</name>
      <className>boolean</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>maxlength</name>
      <className>int</className>
      <desc>The max number or characters allowed for this param</desc>
      <longDesc>The max number or characters allowed for this param</longDesc>
      <generated>false</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIViewRoot</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component.UIViewRoot</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <name>f:view</name>
    <type>javax.faces.ViewRoot</type>
    <bodyContent>JSP</bodyContent>
    <family>javax.faces.ViewRoot</family>
    <tagClass>org.apache.myfaces.taglib.core.ViewTag</tagClass>
    <generatedTagClass>true</generatedTagClass>
    <implementedInterfaces>
      <interface name="javax.faces.component.UniqueIdVendor"/>
    </implementedInterfaces>
    <desc>Creates a JSF View, which is a container that holds all of the components that are part of the view</desc>
    <longDesc>
<![CDATA[
Creates a JSF View, which is a container that holds all of the components that are part of the view.
<p>
Unless otherwise specified, all attributes accept static values or EL expressions.
</p>
<p>
See the javadoc for this class in the <a href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/index.html">JSF
Specification</a> for further details.
</p>
]]>
    </longDesc>
    <property>
      <name>afterPhaseListener</name>
      <jspName>afterPhase</jspName>
      <className>javax.el.MethodExpression</className>
      <stateHolder>true</stateHolder>
      <desc>MethodBinding pointing to a method that takes a javax</desc>
      <longDesc>MethodBinding pointing to a method that takes a javax.faces.event.PhaseEvent and returns void, called after every
phase except for restore view.</longDesc>
      <methodBindingSignature>
        <returnType>void</returnType>
        <parameterType>javax.faces.event.PhaseEvent</parameterType>
      </methodBindingSignature>
    </property>
    <property>
      <name>beforePhaseListener</name>
      <jspName>beforePhase</jspName>
      <className>javax.el.MethodExpression</className>
      <stateHolder>true</stateHolder>
      <desc>MethodBinding pointing to a method that takes a javax</desc>
      <longDesc>MethodBinding pointing to a method that takes a javax.faces.event.PhaseEvent and returns void, called before
every phase except for restore view.</longDesc>
      <methodBindingSignature>
        <returnType>void</returnType>
        <parameterType>javax.faces.event.PhaseEvent</parameterType>
      </methodBindingSignature>
    </property>
    <property>
      <name>locale</name>
      <className>java.util.Locale</className>
      <desc>The locale for this view</desc>
      <longDesc>
<![CDATA[
The locale for this view.
<p>
Defaults to the default locale specified in the faces configuration file.
</p>
]]>
      </longDesc>
    </property>
    <property>
      <name>renderKitId</name>
      <className>java.lang.String</className>
      <desc>Defines what renderkit should be used to render this view</desc>
      <longDesc>Defines what renderkit should be used to render this view.</longDesc>
    </property>
    <property>
      <name>viewId</name>
      <className>java.lang.String</className>
      <desc>A unique identifier for the "template" from which this view was generated</desc>
      <longDesc>
<![CDATA[
A unique identifier for the "template" from which this view was generated.
<p>
Typically this is the filesystem path to the template file, but the exact details are the responsibility of the
current ViewHandler implementation.
]]>
      </longDesc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>DO NOT USE</desc>
      <longDesc>
<![CDATA[
DO NOT USE.
<p>
This inherited property is disabled. Although this class extends a base-class that defines a read/write rendered
property, this particular subclass does not support setting it. Yes, this is broken OO design: direct all
complaints to the JSF spec group.
]]>
      </longDesc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>id</name>
      <className>java.lang.String</className>
      <desc>DO NOT USE</desc>
      <longDesc>
<![CDATA[
DO NOT USE.
<p>
Although this class extends a base-class that defines a read/write id property, it makes no sense for this
particular subclass to support it. The tag library does not export this property for use, but there is no way to
"undeclare" a java method. Yes, this is broken OO design: direct all complaints to the JSF spec group.
<p>
This property should be disabled (ie throw an exception if invoked). However there are currently several places
that call this method (eg during restoreState) so it just does the normal thing for the moment. TODO: fix callers
then make this throw an exception.
]]>
      </longDesc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>binding</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
      <generated>false</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIMessage</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component._UIMessage</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>javax.faces.Message</type>
    <family>javax.faces.Message</family>
    <rendererType>javax.faces.Message</rendererType>
    <generatedComponentClass>true</generatedComponentClass>
    <template>true</template>
    <desc>UIMessage is the base component class for components
that display a single message on behalf of a component</desc>
    <longDesc>UIMessage is the base component class for components
that display a single message on behalf of a component.</longDesc>
    <property>
      <name>for</name>
      <className>java.lang.String</className>
      <required>true</required>
      <desc>The ID of the component whose attached FacesMessage object (if present) 
should be diplayed by this component</desc>
      <longDesc>
<![CDATA[
The ID of the component whose attached FacesMessage object (if present) 
should be diplayed by this component.
<p>
This is a required property on the component.
</p>
]]>
      </longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>showDetail</name>
      <className>boolean</className>
      <desc>Specifies whether the detailed information from the message should be shown</desc>
      <longDesc>Specifies whether the detailed information from the message should be shown. 
Default to true.</longDesc>
      <defaultValue>true</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>showSummary</name>
      <className>boolean</className>
      <desc>Specifies whether the summary information from the message should be shown</desc>
      <longDesc>Specifies whether the summary information from the message should be shown.
Defaults to false.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>redisplay</name>
      <className>boolean</className>
      <desc>Indicate this component should render already handled messages</desc>
      <longDesc>Indicate this component should render already handled messages.
Default value is true</longDesc>
      <defaultValue>true</defaultValue>
      <tagExcluded>true</tagExcluded>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIMessages</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component._UIMessages</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>javax.faces.Messages</type>
    <family>javax.faces.Messages</family>
    <rendererType>javax.faces.Messages</rendererType>
    <generatedComponentClass>true</generatedComponentClass>
    <template>true</template>
    <desc>UIMessage is the base component class for components
that display a multiple messages on behalf of a component</desc>
    <longDesc>UIMessage is the base component class for components
that display a multiple messages on behalf of a component.</longDesc>
    <property>
      <name>globalOnly</name>
      <className>boolean</className>
      <desc>Specifies whether only messages (FacesMessage objects) not associated with a
specific component should be displayed, ie whether messages should be ignored
if they are attached to a particular component</desc>
      <longDesc>Specifies whether only messages (FacesMessage objects) not associated with a
specific component should be displayed, ie whether messages should be ignored
if they are attached to a particular component. Defaults to false.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>showDetail</name>
      <className>boolean</className>
      <desc>Specifies whether the detailed information from the message should be shown</desc>
      <longDesc>Specifies whether the detailed information from the message should be shown. 
Default to false.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>showSummary</name>
      <className>boolean</className>
      <desc>Specifies whether the summary information from the message should be shown</desc>
      <longDesc>Specifies whether the summary information from the message should be shown.
Defaults to true.</longDesc>
      <defaultValue>true</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>redisplay</name>
      <className>boolean</className>
      <desc>Indicate this component should render already handled messages</desc>
      <longDesc>Indicate this component should render already handled messages.
Default value is true</longDesc>
      <defaultValue>true</defaultValue>
      <tagExcluded>true</tagExcluded>
      <generated>true</generated>
    </property>
    <property>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>The ID of the component whose attached FacesMessage object (if present) 
should be diplayed by this component</desc>
      <longDesc>The ID of the component whose attached FacesMessage object (if present) 
should be diplayed by this component. It takes precedence over globalOnly.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UIParameter</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component._UIParameter</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <name>f:param</name>
    <type>javax.faces.Parameter</type>
    <family>javax.faces.Parameter</family>
    <tagClass>org.apache.myfaces.taglib.core.ParamTag</tagClass>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <desc>This tag associates a parameter name-value pair with the nearest parent UIComponent</desc>
    <longDesc>
<![CDATA[
This tag associates a parameter name-value pair with the nearest parent UIComponent. A UIComponent is created to
represent this name-value pair, and stored as a child of the parent component; what effect this has depends upon the
renderer of that parent component.
<p>
Unless otherwise specified, all attributes accept static values or EL expressions.
</p>
]]>
    </longDesc>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>Disable this property; although this class extends a base-class that defines a read/write rendered property, this
particular subclass does not support setting it</desc>
      <longDesc>Disable this property; although this class extends a base-class that defines a read/write rendered property, this
particular subclass does not support setting it. Yes, this is broken OO design: direct all complaints to the JSF
spec group.</longDesc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>The value of this component</desc>
      <longDesc>The value of this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>name</name>
      <className>java.lang.String</className>
      <desc>The name under which the value is stored</desc>
      <longDesc>The name under which the value is stored.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disable</name>
      <className>boolean</className>
      <desc>If this property is true, the value of this component is
 just ignored or skipped</desc>
      <longDesc>If this property is true, the value of this component is
 just ignored or skipped.</longDesc>
      <defaultValue>false</defaultValue>
      <tagExcluded>true</tagExcluded>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UISelectItem</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component._UISelectItem</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <name>f:selectItem</name>
    <type>javax.faces.SelectItem</type>
    <bodyContent>empty</bodyContent>
    <family>javax.faces.SelectItem</family>
    <tagClass>org.apache.myfaces.taglib.core.SelectItemTag</tagClass>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <desc>This tag associates a single SelectItem with the nearest parent UIComponent</desc>
    <longDesc>
<![CDATA[
This tag associates a single SelectItem with the nearest parent UIComponent. The item represents a single option for
a component such as an h:selectBooleanCheckbox or h:selectOneMenu. See also component selectItems.
<p>
Unless otherwise specified, all attributes accept static values or EL expressions.
</p>
<p>
UISelectItem should be nestetd inside a UISelectMany or UISelectOne component, and results in the addition of a
SelectItem instance to the list of available options for the parent component
</p>
]]>
    </longDesc>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>Disable this property; although this class extends a base-class that defines a read/write rendered property, this
particular subclass does not support setting it</desc>
      <longDesc>Disable this property; although this class extends a base-class that defines a read/write rendered property, this
particular subclass does not support setting it. Yes, this is broken OO design: direct all complaints to the JSF
spec group.</longDesc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>The initial value of this component</desc>
      <longDesc>The initial value of this component.</longDesc>
      <generated>true</generated>
      <deferredValueType>javax.faces.model.SelectItem</deferredValueType>
    </property>
    <property>
      <name>itemDisabled</name>
      <className>boolean</className>
      <desc>Determine whether this item can be chosen by the user</desc>
      <longDesc>Determine whether this item can be chosen by the user. When true, this item cannot be chosen by the user. If this
method is ever called, then any EL-binding for the disabled property will be ignored.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </property>
    <property>
      <name>itemEscaped</name>
      <jspName>escape</jspName>
      <className>boolean</className>
      <desc>The escape setting for the label of this selection item</desc>
      <longDesc>The escape setting for the label of this selection item.</longDesc>
      <defaultValue>true</defaultValue>
      <generated>true</generated>
      <deferredValueType>java.lang.String</deferredValueType>
    </property>
    <property>
      <name>itemDescription</name>
      <className>java.lang.String</className>
      <desc>For use in development tools</desc>
      <longDesc>For use in development tools.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>itemLabel</name>
      <className>java.lang.String</className>
      <desc>The string which will be presented to the user for this option</desc>
      <longDesc>The string which will be presented to the user for this option.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>itemValue</name>
      <className>java.lang.Object</className>
      <desc>The value for this Item</desc>
      <longDesc>The value for this Item.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>noSelectionOption</name>
      <className>boolean</className>
      <desc>Indicate this component represent no selection option</desc>
      <longDesc>Indicate this component represent no selection option. 
Default value is false.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.UISelectItems</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>javax.faces.component._UISelectItems</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <name>f:selectItems</name>
    <type>javax.faces.SelectItems</type>
    <bodyContent>empty</bodyContent>
    <family>javax.faces.SelectItems</family>
    <tagClass>org.apache.myfaces.taglib.core.SelectItemsTag</tagClass>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <desc>This tag associates a set of selection list items with the nearest
parent UIComponent</desc>
    <longDesc>
<![CDATA[
This tag associates a set of selection list items with the nearest
parent UIComponent. The set of SelectItem objects is retrieved via
a value-binding.
<p>
Unless otherwise specified, all attributes accept static values
or EL expressions.
</p>
<p>
UISelectItems should be nested inside a UISelectMany or UISelectOne component,
and results in  the addition of one ore more SelectItem instance to the list of available options
for the parent component
</p>
]]>
    </longDesc>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>Disable this property; although this class extends a base-class that
defines a read/write rendered property, this particular subclass
does not support setting it</desc>
      <longDesc>Disable this property; although this class extends a base-class that
defines a read/write rendered property, this particular subclass
does not support setting it. Yes, this is broken OO design: direct
all complaints to the JSF spec group.</longDesc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>The initial value of this component</desc>
      <longDesc>The initial value of this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>var</name>
      <className>java.lang.String</className>
      <literalOnly>true</literalOnly>
      <desc>Name of a request-scope attribute under which the current item
of the collection, array, etc</desc>
      <longDesc>Name of a request-scope attribute under which the current item
of the collection, array, etc. of the value attribute will be 
exposed so that it can be referred to in EL for other attributes 
of this component.</longDesc>
    </property>
    <property>
      <name>itemValue</name>
      <className>java.lang.Object</className>
      <desc>The value for the current item</desc>
      <longDesc>The value for the current item.</longDesc>
    </property>
    <property>
      <name>itemLabel</name>
      <className>java.lang.String</className>
      <desc>The label of the current item</desc>
      <longDesc>The label of the current item.</longDesc>
    </property>
    <property>
      <name>itemDescription</name>
      <className>java.lang.String</className>
      <desc>The description of the current item</desc>
      <longDesc>The description of the current item.</longDesc>
    </property>
    <property>
      <name>itemDisabled</name>
      <className>boolean</className>
      <desc>Determines if the current item is selectable or not</desc>
      <longDesc>Determines if the current item is selectable or not.</longDesc>
      <defaultValue>false</defaultValue>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </property>
    <property>
      <name>itemLabelEscaped</name>
      <className>boolean</className>
      <desc>Determines if the rendered markup for the current item receives
normal JSF HTML escaping or not</desc>
      <longDesc>Determines if the rendered markup for the current item receives
normal JSF HTML escaping or not.</longDesc>
      <defaultValue>true</defaultValue>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlInputHidden</className>
    <parentClassName>javax.faces.component.UIInput</parentClassName>
    <sourceClassName>javax.faces.component.html.HtmlInputHidden</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIInput</sourceClassParentClassName>
    <name>h:inputHidden</name>
    <type>javax.faces.HtmlInputHidden</type>
    <family>javax.faces.Input</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlInputHiddenTag</tagClass>
    <rendererType>javax.faces.Hidden</rendererType>
    <generatedTagClass>true</generatedTagClass>
    <desc>Renders as an HTML input tag with its type set to "hidden"</desc>
    <longDesc>Renders as an HTML input tag with its type set to "hidden".
Unless otherwise specified, all attributes accept static values
or EL expressions.</longDesc>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlBody</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlBody</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <name>h:body</name>
    <type>javax.faces.OutputBody</type>
    <family>javax.faces.Output</family>
    <rendererType>javax.faces.Body</rendererType>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>no description</desc>
    <longDesc></longDesc>
    <property>
      <name>onload</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the page is loaded</desc>
      <longDesc>HTML: Script to be invoked when the page is loaded</longDesc>
      <generated>true</generated>
      <clientEvent>load</clientEvent>
    </property>
    <property>
      <name>onunload</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the page is unloaded</desc>
      <longDesc>HTML: Script to be invoked when the page is unloaded</longDesc>
      <generated>true</generated>
      <clientEvent>unload</clientEvent>
    </property>
    <property>
      <name>converter</name>
      <className>javax.faces.convert.Converter</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>id</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlColumn</className>
    <parentClassName>javax.faces.component.UIColumn</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlColumn</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIColumn</sourceClassParentClassName>
    <name>h:column</name>
    <type>javax.faces.HtmlColumn</type>
    <family>javax.faces.Column</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlColumnTag</tagClass>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <desc>Creates a UIComponent that represents a single column of data within a parent UIData component</desc>
    <longDesc>
<![CDATA[
Creates a UIComponent that represents a single column of data within a parent UIData component.
<p>
This tag is commonly used as a child of the h:dataTable tag, to represent a column of
data within an html table. It can be decorated with nested "header" and "footer" facets
which cause the output of header and footer rows.
</p>
<p>
The non-facet child components of this column are re-rendered on each table row
to generate the content of the cell. Those child components can reference the "var"
attribute of the containing h:dataTable to generate appropriate output for each row.
</p>
]]>
    </longDesc>
    <property>
      <name>headerClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for the header</desc>
      <longDesc>CSS class to be used for the header.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>footerClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for the footer</desc>
      <longDesc>CSS class to be used for the footer.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rowHeader</name>
      <className>boolean</className>
      <desc>If true the column is rendered with "th" and scope="row" attribute,
instead "td"</desc>
      <longDesc>If true the column is rendered with "th" and scope="row" attribute,
instead "td"</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>no description</desc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlCommandButton</className>
    <parentClassName>javax.faces.component.UICommand</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlCommandButton</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UICommand</sourceClassParentClassName>
    <name>h:commandButton</name>
    <type>javax.faces.HtmlCommandButton</type>
    <family>javax.faces.Command</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlCommandButtonTag</tagClass>
    <rendererType>javax.faces.Button</rendererType>
    <defaultEventName>action</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>This tag renders as an HTML input element</desc>
    <longDesc>This tag renders as an HTML input element.</longDesc>
    <property>
      <name>image</name>
      <className>java.lang.String</className>
      <desc>HTML: The URL of an image that renders in place of the button</desc>
      <longDesc>HTML: The URL of an image that renders in place of the button.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>type</name>
      <className>java.lang.String</className>
      <desc>HTML: A hint to the user agent about the content type of the linked resource</desc>
      <longDesc>HTML: A hint to the user agent about the content type of the linked resource.</longDesc>
      <defaultValue>submit</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>alt</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies alternative text that can be used by a browser that can't show this element</desc>
      <longDesc>HTML: Specifies alternative text that can be used by a browser that can't show this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlCommandLink</className>
    <parentClassName>javax.faces.component.UICommand</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlCommandLink</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UICommand</sourceClassParentClassName>
    <name>h:commandLink</name>
    <type>javax.faces.HtmlCommandLink</type>
    <family>javax.faces.Command</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlCommandLinkTag</tagClass>
    <rendererType>javax.faces.Link</rendererType>
    <defaultEventName>action</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>This tag renders as an HTML a element</desc>
    <longDesc>This tag renders as an HTML a element.</longDesc>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>When true, this element cannot receive focus</desc>
      <longDesc>When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>charset</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the character encoding of the linked resource</desc>
      <longDesc>HTML: Specifies the character encoding of the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>coords</name>
      <className>java.lang.String</className>
      <desc>HTML: The coordinates of regions within a client side image map</desc>
      <longDesc>HTML: The coordinates of regions within a client side image map.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>hreflang</name>
      <className>java.lang.String</className>
      <desc>HTML: The language of the linked resource</desc>
      <longDesc>HTML: The language of the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rel</name>
      <className>java.lang.String</className>
      <desc>HTML: The relationship between the current document and
the linked resource</desc>
      <longDesc>HTML: The relationship between the current document and
the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rev</name>
      <className>java.lang.String</className>
      <desc>HTML: The type(s) describing the reverse link for the linked
resource</desc>
      <longDesc>HTML: The type(s) describing the reverse link for the linked
resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>shape</name>
      <className>java.lang.String</className>
      <desc>HTML: The shape of a region in a client side image map</desc>
      <longDesc>HTML: The shape of a region in a client side image map.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>target</name>
      <className>java.lang.String</className>
      <desc>HTML: Names the frame that should display content generated by invoking this action</desc>
      <longDesc>HTML: Names the frame that should display content generated by invoking this action.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>type</name>
      <className>java.lang.String</className>
      <desc>HTML: A hint to the user agent about the content type of the linked resource</desc>
      <longDesc>HTML: A hint to the user agent about the content type of the linked resource.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlDataTable</className>
    <parentClassName>javax.faces.component.UIData</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlDataTable</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIData</sourceClassParentClassName>
    <name>h:dataTable</name>
    <type>javax.faces.HtmlDataTable</type>
    <family>javax.faces.Data</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlDataTableTag</tagClass>
    <rendererType>javax.faces.Table</rendererType>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>This component renders an HTML table element</desc>
    <longDesc>
<![CDATA[
This component renders an HTML table element.
<p>
This component may have nested facets with names "header" and "footer"
to specify header and footer rows.
</p>
<p>
The non-facet children of this component are expected to be
h:column components which describe the columns of the table.
</p>
]]>
    </longDesc>
    <property>
      <name>bgcolor</name>
      <className>java.lang.String</className>
      <desc>HTML: The background color of this element</desc>
      <longDesc>HTML: The background color of this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>bodyrows</name>
      <className>java.lang.String</className>
      <desc>CSV of several row index to start (and end a previous) tbody element</desc>
      <longDesc>CSV of several row index to start (and end a previous) tbody element</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>border</name>
      <className>int</className>
      <desc>HTML: Specifies the width of the border of this element, in pixels</desc>
      <longDesc>HTML: Specifies the width of the border of this element, in pixels.  Deprecated in HTML 4.01.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>cellpadding</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the amount of empty space between the cell border and
its contents</desc>
      <longDesc>HTML: Specifies the amount of empty space between the cell border and
its contents.  It can be either a pixel length or a percentage.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>cellspacing</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the amount of space between the cells of the table</desc>
      <longDesc>HTML: Specifies the amount of space between the cells of the table.
It can be either a pixel length or a percentage of available 
space.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>columnClasses</name>
      <className>java.lang.String</className>
      <desc>A comma separated list of CSS class names to apply to td elements in
each column</desc>
      <longDesc>A comma separated list of CSS class names to apply to td elements in
each column.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>footerClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class to be applied to footer cells</desc>
      <longDesc>The CSS class to be applied to footer cells.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>frame</name>
      <className>java.lang.String</className>
      <desc>HTML: Controls what part of the frame that surrounds a table is 
visible</desc>
      <longDesc>HTML: Controls what part of the frame that surrounds a table is 
visible.  Values include:  void, above, below, hsides, lhs, 
rhs, vsides, box, and border.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>headerClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class to be applied to header cells</desc>
      <longDesc>The CSS class to be applied to header cells.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rowClasses</name>
      <className>java.lang.String</className>
      <desc>A comma separated list of CSS class names to apply to td elements in
each row</desc>
      <longDesc>A comma separated list of CSS class names to apply to td elements in
each row.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rules</name>
      <className>java.lang.String</className>
      <desc>HTML: Controls how rules are rendered between cells</desc>
      <longDesc>HTML: Controls how rules are rendered between cells.  Values include:
none, groups, rows, cols, and all.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>summary</name>
      <className>java.lang.String</className>
      <desc>HTML: Provides a summary of the contents of the table, for
accessibility purposes</desc>
      <longDesc>HTML: Provides a summary of the contents of the table, for
accessibility purposes.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>width</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the desired width of the table, as a pixel length or
a percentage of available space</desc>
      <longDesc>HTML: Specifies the desired width of the table, as a pixel length or
a percentage of available space.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>captionClass</name>
      <className>java.lang.String</className>
      <desc>A comma separated list of CSS class names to apply to all captions</desc>
      <longDesc>A comma separated list of CSS class names to apply to all captions.
If there are less classes than the number of rows, apply the same
sequence of classes to the remaining captions, so the pattern is repeated.
More than one class can be applied to a row by separating the classes
with a space.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>captionStyle</name>
      <className>java.lang.String</className>
      <desc>Gets The CSS class to be applied to the Caption</desc>
      <longDesc>Gets The CSS class to be applied to the Caption.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlForm</className>
    <parentClassName>javax.faces.component.UIForm</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlForm</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIForm</sourceClassParentClassName>
    <name>h:form</name>
    <type>javax.faces.HtmlForm</type>
    <family>javax.faces.Form</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlFormTag</tagClass>
    <rendererType>javax.faces.Form</rendererType>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Renders an HTML form element</desc>
    <longDesc>Renders an HTML form element.</longDesc>
    <property>
      <name>accept</name>
      <className>java.lang.String</className>
      <desc>HTML: Provides a comma-separated list of content types that the 
server processing this form can handle</desc>
      <longDesc>HTML: Provides a comma-separated list of content types that the 
server processing this form can handle.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>acceptcharset</name>
      <className>java.lang.String</className>
      <desc>HTML: The list of character encodings accepted by the server for this
form</desc>
      <longDesc>HTML: The list of character encodings accepted by the server for this
form.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>enctype</name>
      <className>java.lang.String</className>
      <desc>HTML: The content type used to submit this form to the server</desc>
      <longDesc>HTML: The content type used to submit this form to the server.</longDesc>
      <defaultValue>application/x-www-form-urlencoded</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>onreset</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when this form is reset</desc>
      <longDesc>HTML: Script to be invoked when this form is reset.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onsubmit</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when this form is submitted</desc>
      <longDesc>HTML: Script to be invoked when this form is submitted.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>target</name>
      <className>java.lang.String</className>
      <desc>HTML: Names the frame that should display content generated by invoking this action</desc>
      <longDesc>HTML: Names the frame that should display content generated by invoking this action.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlGraphicImage</className>
    <parentClassName>javax.faces.component.UIGraphic</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlGraphicImage</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIGraphic</sourceClassParentClassName>
    <name>h:graphicImage</name>
    <type>javax.faces.HtmlGraphicImage</type>
    <family>javax.faces.Graphic</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlGraphicImageTag</tagClass>
    <rendererType>javax.faces.Image</rendererType>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Renders an HTML img element</desc>
    <longDesc>
<![CDATA[
Renders an HTML img element.
<p>
The value attribute specifies the url of the image to be displayed;
see the documentation for attribute "url" for more details.
</p>
]]>
    </longDesc>
    <property>
      <name>height</name>
      <className>java.lang.String</className>
      <desc>HTML: Overrides the natural height of this image, by specifying height in pixels</desc>
      <longDesc>HTML: Overrides the natural height of this image, by specifying height in pixels.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>ismap</name>
      <className>boolean</className>
      <desc>HTML: Specifies server-side image map handling for this image</desc>
      <longDesc>HTML: Specifies server-side image map handling for this image.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>longdesc</name>
      <className>java.lang.String</className>
      <desc>HTML: A link to a long description of the image</desc>
      <longDesc>HTML: A link to a long description of the image.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>usemap</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies an image map to use with this image</desc>
      <longDesc>HTML: Specifies an image map to use with this image.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>width</name>
      <className>java.lang.String</className>
      <desc>HTML: Overrides the natural width of this image, by specifying width in pixels</desc>
      <longDesc>HTML: Overrides the natural width of this image, by specifying width in pixels.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>library</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <longDesc></longDesc>
    </property>
    <property>
      <name>name</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <longDesc></longDesc>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>alt</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies alternative text that can be used by a browser that can't show this element</desc>
      <longDesc>HTML: Specifies alternative text that can be used by a browser that can't show this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlHead</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlHead</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <name>h:head</name>
    <type>javax.faces.OutputHead</type>
    <family>javax.faces.Output</family>
    <rendererType>javax.faces.Head</rendererType>
    <generatedComponentClass>true</generatedComponentClass>
    <template>true</template>
    <desc>no description</desc>
    <longDesc></longDesc>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>converter</name>
      <className>javax.faces.convert.Converter</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>id</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlInputSecret</className>
    <parentClassName>javax.faces.component.UIInput</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlInputSecret</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIInput</sourceClassParentClassName>
    <name>h:inputSecret</name>
    <type>javax.faces.HtmlInputSecret</type>
    <family>javax.faces.Input</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlInputSecretTag</tagClass>
    <rendererType>javax.faces.Secret</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Renders as an HTML input tag with its type set to "password"</desc>
    <longDesc>Renders as an HTML input tag with its type set to "password".</longDesc>
    <property>
      <name>maxlength</name>
      <className>int</className>
      <desc>HTML: The maximum number of characters allowed to be entered</desc>
      <longDesc>HTML: The maximum number of characters allowed to be entered.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>redisplay</name>
      <className>boolean</className>
      <desc>If true, the value will be re-sent (in plaintext) when the form
is rerendered (see JSF</desc>
      <longDesc>If true, the value will be re-sent (in plaintext) when the form
is rerendered (see JSF.7.4.4). Default is false.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>size</name>
      <className>int</className>
      <desc>HTML: The initial width of this control, in characters</desc>
      <longDesc>HTML: The initial width of this control, in characters.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>autocomplete</name>
      <className>java.lang.String</className>
      <desc>If the value of this attribute is "off", render "off" as the value of the attribute</desc>
      <longDesc>If the value of this attribute is "off", render "off" as the value of the attribute.
This indicates that the browser should disable its autocomplete feature for this component.
This is useful for components that perform autocompletion and do not want the browser interfering.
If this attribute is not set or the value is "on", render nothing.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>alt</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies alternative text that can be used by a browser that can't show this element</desc>
      <longDesc>HTML: Specifies alternative text that can be used by a browser that can't show this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlInputText</className>
    <parentClassName>javax.faces.component.UIInput</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlInputText</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIInput</sourceClassParentClassName>
    <name>h:inputText</name>
    <type>javax.faces.HtmlInputText</type>
    <family>javax.faces.Input</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlInputTextTag</tagClass>
    <rendererType>javax.faces.Text</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Renders a HTML input element</desc>
    <longDesc>Renders a HTML input element.</longDesc>
    <property>
      <name>maxlength</name>
      <className>int</className>
      <desc>HTML: The maximum number of characters allowed to be entered</desc>
      <longDesc>HTML: The maximum number of characters allowed to be entered.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>size</name>
      <className>int</className>
      <desc>HTML: The initial width of this control, in characters</desc>
      <longDesc>HTML: The initial width of this control, in characters.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>autocomplete</name>
      <className>java.lang.String</className>
      <desc>If the value of this attribute is "off", render "off" as the value of the attribute</desc>
      <longDesc>If the value of this attribute is "off", render "off" as the value of the attribute.
This indicates that the browser should disable its autocomplete feature for this component.
This is useful for components that perform autocompletion and do not want the browser interfering.
If this attribute is not set or the value is "on", render nothing.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>alt</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies alternative text that can be used by a browser that can't show this element</desc>
      <longDesc>HTML: Specifies alternative text that can be used by a browser that can't show this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlInputTextarea</className>
    <parentClassName>javax.faces.component.UIInput</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlInputTextarea</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIInput</sourceClassParentClassName>
    <name>h:inputTextarea</name>
    <type>javax.faces.HtmlInputTextarea</type>
    <family>javax.faces.Input</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlInputTextareaTag</tagClass>
    <rendererType>javax.faces.Textarea</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Renders a HTML textarea element</desc>
    <longDesc>Renders a HTML textarea element.</longDesc>
    <property>
      <name>cols</name>
      <className>int</className>
      <desc>HTML: The width of this element, in characters</desc>
      <longDesc>HTML: The width of this element, in characters.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>rows</name>
      <className>int</className>
      <desc>HTML: The height of this element, in characters</desc>
      <longDesc>HTML: The height of this element, in characters.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlMessage</className>
    <parentClassName>javax.faces.component.UIMessage</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlMessage</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIMessage</sourceClassParentClassName>
    <name>h:message</name>
    <type>javax.faces.HtmlMessage</type>
    <family>javax.faces.Message</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlMessageTag</tagClass>
    <rendererType>javax.faces.Message</rendererType>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <desc>Renders text displaying information about the first FacesMessage
          that is assigned to the component referenced by the "for" attribute</desc>
    <longDesc>Renders text displaying information about the first FacesMessage
          that is assigned to the component referenced by the "for" attribute.</longDesc>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>errorClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for messages with severity "ERROR"</desc>
      <longDesc>CSS class to be used for messages with severity "ERROR".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>errorStyle</name>
      <className>java.lang.String</className>
      <desc>CSS style to be used for messages with severity "ERROR"</desc>
      <longDesc>CSS style to be used for messages with severity "ERROR".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>fatalClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for messages with severity "FATAL"</desc>
      <longDesc>CSS class to be used for messages with severity "FATAL".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>fatalStyle</name>
      <className>java.lang.String</className>
      <desc>CSS style to be used for messages with severity "FATAL"</desc>
      <longDesc>CSS style to be used for messages with severity "FATAL".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>infoClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for messages with severity "INFO"</desc>
      <longDesc>CSS class to be used for messages with severity "INFO".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>infoStyle</name>
      <className>java.lang.String</className>
      <desc>CSS style to be used for messages with severity "INFO"</desc>
      <longDesc>CSS style to be used for messages with severity "INFO".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tooltip</name>
      <className>boolean</className>
      <desc>If true, the message summary will be rendered as a tooltip (i</desc>
      <longDesc>If true, the message summary will be rendered as a tooltip (i.e. HTML title attribute).</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>warnClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for messages with severity "WARN"</desc>
      <longDesc>CSS class to be used for messages with severity "WARN".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>warnStyle</name>
      <className>java.lang.String</className>
      <desc>CSS style to be used for messages with severity "WARN"</desc>
      <longDesc>CSS style to be used for messages with severity "WARN".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlMessages</className>
    <parentClassName>javax.faces.component.UIMessages</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlMessages</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIMessages</sourceClassParentClassName>
    <name>h:messages</name>
    <type>javax.faces.HtmlMessages</type>
    <family>javax.faces.Messages</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlMessagesTag</tagClass>
    <rendererType>javax.faces.Messages</rendererType>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <desc>Renders all or some FacesMessages depending on the "for" and
"globalOnly" attributes</desc>
    <longDesc>
<![CDATA[
Renders all or some FacesMessages depending on the "for" and
"globalOnly" attributes.

<ul>
<li>If globalOnly = true, only global messages, that have no
associated clientId, will be displayed.</li>
<li>else if there is a "for" attribute, only messages that are
assigned to the component referenced by the "for" attribute
are displayed.</li>
<li>else all messages are displayed.</li>
</ul>
]]>
    </longDesc>
    <property>
      <name>layout</name>
      <className>java.lang.String</className>
      <desc>The layout: "table" or "list"</desc>
      <longDesc>The layout: "table" or "list". Default: list</longDesc>
      <defaultValue>list</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>errorClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for messages with severity "ERROR"</desc>
      <longDesc>CSS class to be used for messages with severity "ERROR".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>errorStyle</name>
      <className>java.lang.String</className>
      <desc>CSS style to be used for messages with severity "ERROR"</desc>
      <longDesc>CSS style to be used for messages with severity "ERROR".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>fatalClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for messages with severity "FATAL"</desc>
      <longDesc>CSS class to be used for messages with severity "FATAL".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>fatalStyle</name>
      <className>java.lang.String</className>
      <desc>CSS style to be used for messages with severity "FATAL"</desc>
      <longDesc>CSS style to be used for messages with severity "FATAL".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>infoClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for messages with severity "INFO"</desc>
      <longDesc>CSS class to be used for messages with severity "INFO".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>infoStyle</name>
      <className>java.lang.String</className>
      <desc>CSS style to be used for messages with severity "INFO"</desc>
      <longDesc>CSS style to be used for messages with severity "INFO".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tooltip</name>
      <className>boolean</className>
      <desc>If true, the message summary will be rendered as a tooltip (i</desc>
      <longDesc>If true, the message summary will be rendered as a tooltip (i.e. HTML title attribute).</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>warnClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be used for messages with severity "WARN"</desc>
      <longDesc>CSS class to be used for messages with severity "WARN".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>warnStyle</name>
      <className>java.lang.String</className>
      <desc>CSS style to be used for messages with severity "WARN"</desc>
      <longDesc>CSS style to be used for messages with severity "WARN".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlOutcomeTargetButton</className>
    <parentClassName>javax.faces.component.UIOutcomeTarget</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlOutcomeTargetButton</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutcomeTarget</sourceClassParentClassName>
    <name>h:button</name>
    <type>javax.faces.HtmlOutcomeTargetButton</type>
    <family>javax.faces.OutcomeTarget</family>
    <rendererType>javax.faces.Button</rendererType>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>no description</desc>
    <longDesc></longDesc>
    <property>
      <name>image</name>
      <className>java.lang.String</className>
      <desc>HTML: the value to put as image attribute</desc>
      <longDesc>HTML: the value to put as image attribute</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>alt</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies alternative text that can be used by a browser that can't show this element</desc>
      <longDesc>HTML: Specifies alternative text that can be used by a browser that can't show this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlOutcomeTargetLink</className>
    <parentClassName>javax.faces.component.UIOutcomeTarget</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlOutcomeTargetLink</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutcomeTarget</sourceClassParentClassName>
    <name>h:link</name>
    <type>javax.faces.HtmlOutcomeTargetLink</type>
    <family>javax.faces.OutcomeTarget</family>
    <rendererType>javax.faces.Link</rendererType>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>no description</desc>
    <longDesc></longDesc>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>charset</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the character encoding of the linked resource</desc>
      <longDesc>HTML: Specifies the character encoding of the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>coords</name>
      <className>java.lang.String</className>
      <desc>HTML: The coordinates of regions within a client side image map</desc>
      <longDesc>HTML: The coordinates of regions within a client side image map.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>hreflang</name>
      <className>java.lang.String</className>
      <desc>HTML: The language of the linked resource</desc>
      <longDesc>HTML: The language of the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rel</name>
      <className>java.lang.String</className>
      <desc>HTML: The relationship between the current document and
the linked resource</desc>
      <longDesc>HTML: The relationship between the current document and
the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rev</name>
      <className>java.lang.String</className>
      <desc>HTML: The type(s) describing the reverse link for the linked
resource</desc>
      <longDesc>HTML: The type(s) describing the reverse link for the linked
resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>shape</name>
      <className>java.lang.String</className>
      <desc>HTML: The shape of a region in a client side image map</desc>
      <longDesc>HTML: The shape of a region in a client side image map.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>target</name>
      <className>java.lang.String</className>
      <desc>HTML: Names the frame that should display content generated by invoking this action</desc>
      <longDesc>HTML: Names the frame that should display content generated by invoking this action.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>type</name>
      <className>java.lang.String</className>
      <desc>HTML: A hint to the user agent about the content type of the linked resource</desc>
      <longDesc>HTML: A hint to the user agent about the content type of the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>When true, this element cannot receive focus</desc>
      <longDesc>When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlOutputFormat</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlOutputFormat</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <name>h:outputFormat</name>
    <type>javax.faces.HtmlOutputFormat</type>
    <family>javax.faces.Output</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlOutputFormatTag</tagClass>
    <rendererType>javax.faces.Format</rendererType>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <desc>Renders as text, applying the child f:param values to the value attribute as a MessageFormat string</desc>
    <longDesc>Renders as text, applying the child f:param values to the value attribute as a MessageFormat string.

If this element has an ID or CSS style properties, the text is wrapped in a span element.</longDesc>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>escape</name>
      <className>boolean</className>
      <desc>Indicates whether rendered markup should be escaped</desc>
      <longDesc>Indicates whether rendered markup should be escaped.
Default: true</longDesc>
      <defaultValue>true</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlOutputLabel</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlOutputLabel</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <name>h:outputLabel</name>
    <type>javax.faces.HtmlOutputLabel</type>
    <family>javax.faces.Output</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlOutputLabelTag</tagClass>
    <rendererType>javax.faces.Label</rendererType>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Renders a HTML label element</desc>
    <longDesc>Renders a HTML label element.

In addition to the JSF specification, MyFaces allows it to directly give an output text via the "value" attribute.</longDesc>
    <property>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>The client ID of the target input element of this label</desc>
      <longDesc>The client ID of the target input element of this label.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>escape</name>
      <className>boolean</className>
      <desc>Indicates whether rendered markup should be escaped</desc>
      <longDesc>Indicates whether rendered markup should be escaped.
Default: true</longDesc>
      <defaultValue>true</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlOutputLink</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlOutputLink</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <name>h:outputLink</name>
    <type>javax.faces.HtmlOutputLink</type>
    <family>javax.faces.Output</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlOutputLinkTag</tagClass>
    <rendererType>javax.faces.Link</rendererType>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Renders a HTML a element</desc>
    <longDesc>Renders a HTML a element.

Child f:param elements are added to the href attribute as query parameters.  Other children
are rendered as the link text or image.</longDesc>
    <property>
      <name>fragment</name>
      <className>java.lang.String</className>
      <desc>append text to url after '#'</desc>
      <longDesc>append text to url after '#'</longDesc>
      <tagExcluded>true</tagExcluded>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>charset</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the character encoding of the linked resource</desc>
      <longDesc>HTML: Specifies the character encoding of the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>coords</name>
      <className>java.lang.String</className>
      <desc>HTML: The coordinates of regions within a client side image map</desc>
      <longDesc>HTML: The coordinates of regions within a client side image map.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>hreflang</name>
      <className>java.lang.String</className>
      <desc>HTML: The language of the linked resource</desc>
      <longDesc>HTML: The language of the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rel</name>
      <className>java.lang.String</className>
      <desc>HTML: The relationship between the current document and
the linked resource</desc>
      <longDesc>HTML: The relationship between the current document and
the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rev</name>
      <className>java.lang.String</className>
      <desc>HTML: The type(s) describing the reverse link for the linked
resource</desc>
      <longDesc>HTML: The type(s) describing the reverse link for the linked
resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>shape</name>
      <className>java.lang.String</className>
      <desc>HTML: The shape of a region in a client side image map</desc>
      <longDesc>HTML: The shape of a region in a client side image map.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>target</name>
      <className>java.lang.String</className>
      <desc>HTML: Names the frame that should display content generated by invoking this action</desc>
      <longDesc>HTML: Names the frame that should display content generated by invoking this action.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>type</name>
      <className>java.lang.String</className>
      <desc>HTML: A hint to the user agent about the content type of the linked resource</desc>
      <longDesc>HTML: A hint to the user agent about the content type of the linked resource.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>When true, this element cannot receive focus</desc>
      <longDesc>When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlOutputText</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlOutputText</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <name>h:outputText</name>
    <type>javax.faces.HtmlOutputText</type>
    <family>javax.faces.Output</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlOutputTextTag</tagClass>
    <rendererType>javax.faces.Text</rendererType>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <desc>Renders the value of the associated UIOutput component</desc>
    <longDesc>Renders the value of the associated UIOutput component.

If this element has an ID or CSS style properties, the text is wrapped in a span element.</longDesc>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>escape</name>
      <className>boolean</className>
      <desc>Indicates whether rendered markup should be escaped</desc>
      <longDesc>Indicates whether rendered markup should be escaped.
Default: true</longDesc>
      <defaultValue>true</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlPanelGrid</className>
    <parentClassName>javax.faces.component.UIPanel</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlPanelGrid</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIPanel</sourceClassParentClassName>
    <name>h:panelGrid</name>
    <type>javax.faces.HtmlPanelGrid</type>
    <family>javax.faces.Panel</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlPanelGridTag</tagClass>
    <rendererType>javax.faces.Grid</rendererType>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>This element renders as an HTML table with specified number of columns</desc>
    <longDesc>
<![CDATA[
This element renders as an HTML table with specified number of columns.
<p>
Children of this element are rendered as cells in the table, filling
rows from left to right.  Facets named "header" and "footer" are optional
and specify the content of the thead and tfoot rows, respectively.
</p>
]]>
    </longDesc>
    <property>
      <name>bgcolor</name>
      <className>java.lang.String</className>
      <desc>HTML: The background color of this element</desc>
      <longDesc>HTML: The background color of this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>bodyrows</name>
      <className>java.lang.String</className>
      <desc>CSV of several row index to start (and end a previous) tbody element</desc>
      <longDesc>CSV of several row index to start (and end a previous) tbody element</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>border</name>
      <className>int</className>
      <desc>HTML: Specifies the width of the border of this element, in pixels</desc>
      <longDesc>HTML: Specifies the width of the border of this element, in pixels.  Deprecated in HTML 4.01.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>cellpadding</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the amount of empty space between the cell border and
its contents</desc>
      <longDesc>HTML: Specifies the amount of empty space between the cell border and
its contents.  It can be either a pixel length or a percentage.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>cellspacing</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the amount of space between the cells of the table</desc>
      <longDesc>HTML: Specifies the amount of space between the cells of the table.
It can be either a pixel length or a percentage of available 
space.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>columnClasses</name>
      <className>java.lang.String</className>
      <desc>A comma separated list of CSS class names to apply to td elements in
each column</desc>
      <longDesc>A comma separated list of CSS class names to apply to td elements in
each column.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>columns</name>
      <className>int</className>
      <desc>Specifies the number of columns in the grid</desc>
      <longDesc>Specifies the number of columns in the grid.</longDesc>
      <defaultValue>1</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>footerClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class to be applied to footer cells</desc>
      <longDesc>The CSS class to be applied to footer cells.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>frame</name>
      <className>java.lang.String</className>
      <desc>HTML: Controls what part of the frame that surrounds a table is 
visible</desc>
      <longDesc>HTML: Controls what part of the frame that surrounds a table is 
visible.  Values include:  void, above, below, hsides, lhs, 
rhs, vsides, box, and border.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>headerClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class to be applied to header cells</desc>
      <longDesc>The CSS class to be applied to header cells.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rowClasses</name>
      <className>java.lang.String</className>
      <desc>A comma separated list of CSS class names to apply to td elements in
each row</desc>
      <longDesc>A comma separated list of CSS class names to apply to td elements in
each row.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>rules</name>
      <className>java.lang.String</className>
      <desc>HTML: Controls how rules are rendered between cells</desc>
      <longDesc>HTML: Controls how rules are rendered between cells.  Values include:
none, groups, rows, cols, and all.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>summary</name>
      <className>java.lang.String</className>
      <desc>HTML: Provides a summary of the contents of the table, for
accessibility purposes</desc>
      <longDesc>HTML: Provides a summary of the contents of the table, for
accessibility purposes.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>width</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the desired width of the table, as a pixel length or
a percentage of available space</desc>
      <longDesc>HTML: Specifies the desired width of the table, as a pixel length or
a percentage of available space.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>captionClass</name>
      <className>java.lang.String</className>
      <desc>A comma separated list of CSS class names to apply to all captions</desc>
      <longDesc>A comma separated list of CSS class names to apply to all captions.
If there are less classes than the number of rows, apply the same
sequence of classes to the remaining captions, so the pattern is repeated.
More than one class can be applied to a row by separating the classes
with a space.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>captionStyle</name>
      <className>java.lang.String</className>
      <desc>Gets The CSS class to be applied to the Caption</desc>
      <longDesc>Gets The CSS class to be applied to the Caption.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlPanelGroup</className>
    <parentClassName>javax.faces.component.UIPanel</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlPanelGroup</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIPanel</sourceClassParentClassName>
    <name>h:panelGroup</name>
    <type>javax.faces.HtmlPanelGroup</type>
    <family>javax.faces.Panel</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlPanelGroupTag</tagClass>
    <rendererType>javax.faces.Group</rendererType>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <desc>This element is used to group other components where the specification requires one child element</desc>
    <longDesc>This element is used to group other components where the specification requires one child element.

If any of the HTML or CSS attributes are set, its content is rendered within a span element.</longDesc>
    <property>
      <name>layout</name>
      <className>java.lang.String</className>
      <desc>The type of layout markup to use when rendering this group</desc>
      <longDesc>The type of layout markup to use when rendering this group. If the value is "block"
the renderer must produce an HTML "div" element. Otherwise HTML "span" element must be produced.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlSelectBooleanCheckbox</className>
    <parentClassName>javax.faces.component.UISelectBoolean</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlSelectBooleanCheckbox</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UISelectBoolean</sourceClassParentClassName>
    <name>h:selectBooleanCheckbox</name>
    <type>javax.faces.HtmlSelectBooleanCheckbox</type>
    <family>javax.faces.SelectBoolean</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlSelectBooleanCheckboxTag</tagClass>
    <rendererType>javax.faces.Checkbox</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Allow the user to choose a "true" or "false" value, presented as a
checkbox</desc>
    <longDesc>
<![CDATA[
Allow the user to choose a "true" or "false" value, presented as a
checkbox.
<p>
Renders as an HTML input tag with its type set to "checkbox", and
its name attribute set to the id. The "checked" attribute is rendered
if the value of this component is true.
</p>
]]>
    </longDesc>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlSelectManyCheckbox</className>
    <parentClassName>javax.faces.component.UISelectMany</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlSelectManyCheckbox</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UISelectMany</sourceClassParentClassName>
    <name>h:selectManyCheckbox</name>
    <type>javax.faces.HtmlSelectManyCheckbox</type>
    <family>javax.faces.SelectMany</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlSelectManyCheckboxTag</tagClass>
    <rendererType>javax.faces.Checkbox</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Allow the user to select zero or more items from a set of available options</desc>
    <longDesc>
<![CDATA[
Allow the user to select zero or more items from a set of available options.
<p> 
This is presented as a table with one cell per available option; each cell contains a
checkbox and the option's label. The "layout" attribute determines whether the checkboxes
are laid out horizontally or vertically.
</p>
<p>
The set of available options is defined by adding child
f:selectItem or f:selectItems components to this component.
</p>
<p>
The value attribute must be a value-binding expression to a
property of type List, Object array or primitive array. That
"collection" is expected to contain objects of the same type as
SelectItem.getValue() returns for the child SelectItem objects.
On rendering, any child whose value is in the list will be
selected initially. During the update phase, the property setter
is called to replace the original collection with a completely
new collection object of the appropriate type. The new collection
object contains the value of each child SelectItem object that
is currently selected.
</p>
]]>
    </longDesc>
    <property>
      <name>border</name>
      <className>int</className>
      <desc>HTML: Specifies the width of the border of this element, in pixels</desc>
      <longDesc>HTML: Specifies the width of the border of this element, in pixels.  Deprecated in HTML 4.01.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>layout</name>
      <className>java.lang.String</className>
      <desc>Controls the layout direction of the child elements</desc>
      <longDesc>Controls the layout direction of the child elements.  Values include:  
lineDirection (vertical) and pageDirection (horzontal).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>selectedClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be applied to selected items</desc>
      <longDesc>CSS class to be applied to selected items</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>unselectedClass</name>
      <className>java.lang.String</className>
      <desc>CSS class to be applied to unselected items</desc>
      <longDesc>CSS class to be applied to unselected items</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>disabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>enabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlSelectManyListbox</className>
    <parentClassName>javax.faces.component.UISelectMany</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlSelectManyListbox</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UISelectMany</sourceClassParentClassName>
    <name>h:selectManyListbox</name>
    <type>javax.faces.HtmlSelectManyListbox</type>
    <family>javax.faces.SelectMany</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlSelectManyListboxTag</tagClass>
    <rendererType>javax.faces.Listbox</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Allow the user to select zero or more items from a set of
available options</desc>
    <longDesc>
<![CDATA[
Allow the user to select zero or more items from a set of
available options. This is presented as a listbox which allows
multiple rows in the list to be selected simultaneously.
<p>
The set of available options is defined by adding child
f:selectItem or f:selectItems components to this component.
</p>
<p>
The list is rendered as an HTML select element. The "multiple"
attribute is set on the element and the size attribute is set to
the provided value, defaulting to the number of items in the list
if no value is provided. If the size is set to 1, then a
"drop-down" list (aka "combo-box") is presented, though if this is
the intention then a selectManyMenu should be used instead.
</p>
<p>
The value attribute must be a value-binding expression to a
property of type List, Object array or primitive array. That
"collection" is expected to contain objects of the same type as
SelectItem.getValue() returns for the child SelectItem objects.
On rendering, any child whose value is in the list will be
selected initially. During the update phase, the property is set
to contain a "collection" of values for those child SelectItem
objects that are currently selected.
</p>
]]>
    </longDesc>
    <property>
      <name>size</name>
      <className>int</className>
      <desc>see JSF Spec</desc>
      <longDesc>see JSF Spec.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>disabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>enabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlSelectManyMenu</className>
    <parentClassName>javax.faces.component.UISelectMany</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlSelectManyMenu</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UISelectMany</sourceClassParentClassName>
    <name>h:selectManyMenu</name>
    <type>javax.faces.HtmlSelectManyMenu</type>
    <family>javax.faces.SelectMany</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlSelectManyMenuTag</tagClass>
    <rendererType>javax.faces.Menu</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Allow the user to select zero or more items from a set of available
options</desc>
    <longDesc>
<![CDATA[
Allow the user to select zero or more items from a set of available
options. This is presented as a drop-down "combo-box" which allows
multiple rows in the list to be selected simultaneously.
<p>
The set of available options is defined by adding child
f:selectItem or f:selectItems components to this component.
</p>
<p>
Renders as an HTML select element, with the choices made up of
child f:selectItem or f:selectItems elements. The multiple
attribute is set and the size attribute is set to 1.
</p>
<p>
The value attribute must be a value-binding expression to a
property of type List, Object array or primitive array. That
"collection" is expected to contain objects of the same type as
SelectItem.getValue() returns for the child SelectItem objects.
On rendering, any child whose value is in the list will be
selected initially. During the update phase, the property is set
to contain a "collection" of values for those child SelectItem
objects that are currently selected.
</p>
]]>
    </longDesc>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>disabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>enabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlSelectOneListbox</className>
    <parentClassName>javax.faces.component.UISelectOne</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlSelectOneListbox</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UISelectOne</sourceClassParentClassName>
    <name>h:selectOneListbox</name>
    <type>javax.faces.HtmlSelectOneListbox</type>
    <family>javax.faces.SelectOne</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlSelectOneListboxTag</tagClass>
    <rendererType>javax.faces.Listbox</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Allow the user to choose one option from a set of options</desc>
    <longDesc>
<![CDATA[
Allow the user to choose one option from a set of options.
<p>
Rendered as a listbox with the MULTIPLE attribute set to false.
</p>
<p>
The available choices are defined via child f:selectItem or
f:selectItems elements. The size of the listbox defaults to the
number of available choices; if size is explicitly set to a
smaller value, then scrollbars will be rendered. If size is set
to 1 then a "drop-down menu" (aka "combo-box") is rendered, though
if this is the intent then selectOneMenu should be used instead.
</p>
<p>
The value attribute of this component is read to determine
which of the available options is initially selected; its value
should match the "value" property of one of the child SelectItem
objects.
</p>
<p>
On submit of the enclosing form, the value attribute's bound
property is updated to contain the "value" property from the
chosen SelectItem.
</p>
]]>
    </longDesc>
    <property>
      <name>size</name>
      <className>int</className>
      <desc>see JSF Spec</desc>
      <longDesc>see JSF Spec.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>disabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>enabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlSelectOneMenu</className>
    <parentClassName>javax.faces.component.UISelectOne</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlSelectOneMenu</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UISelectOne</sourceClassParentClassName>
    <name>h:selectOneMenu</name>
    <type>javax.faces.HtmlSelectOneMenu</type>
    <family>javax.faces.SelectOne</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlSelectOneMenuTag</tagClass>
    <rendererType>javax.faces.Menu</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Allow the user to choose one option from a set of options</desc>
    <longDesc>
<![CDATA[
Allow the user to choose one option from a set of options.
<p>
Renders a drop-down menu (aka "combo-box") containing a set of
choices, of which only one can be chosen at a time. The available
choices are defined via child f:selectItem or f:selectItems
elements.
</p>
<p>
The value attribute of this component is read to determine
which of the available options is initially selected; its value
should match the "value" property of one of the child SelectItem
objects.
</p>
<p>
On submit of the enclosing form, the value attribute's bound property
is updated to contain the "value" property from the chosen SelectItem.
</p>
]]>
    </longDesc>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>disabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>enabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.component.html.HtmlSelectOneRadio</className>
    <parentClassName>javax.faces.component.UISelectOne</parentClassName>
    <sourceClassName>javax.faces.component.html._HtmlSelectOneRadio</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UISelectOne</sourceClassParentClassName>
    <name>h:selectOneRadio</name>
    <type>javax.faces.HtmlSelectOneRadio</type>
    <family>javax.faces.SelectOne</family>
    <tagClass>org.apache.myfaces.taglib.html.HtmlSelectOneRadioTag</tagClass>
    <rendererType>javax.faces.Radio</rendererType>
    <defaultEventName>valueChange</defaultEventName>
    <overrideDefaultEventName>true</overrideDefaultEventName>
    <implements>javax.faces.component.behavior.ClientBehaviorHolder</implements>
    <generatedComponentClass>true</generatedComponentClass>
    <generatedTagClass>true</generatedTagClass>
    <template>true</template>
    <clientBehaviorHolder>true</clientBehaviorHolder>
    <implementedInterfaces>
      <interface name="javax.faces.component.behavior.ClientBehaviorHolder"/>
    </implementedInterfaces>
    <desc>Allow the user to choose one option from a set of options</desc>
    <longDesc>
<![CDATA[
Allow the user to choose one option from a set of options.
<p>
Renders as an HTML table element, containing an input element for
each child f:selectItem or f:selectItems elements.  The input
elements are rendered as type radio.
</p>
<p>
The value attribute of this component is read to determine
which of the available options is initially selected; its value should
match the "value" property of one of the child SelectItem objects.
</p>
<p>
On submit of the enclosing form, the value attribute's bound property
is updated to contain the "value" property from the chosen SelectItem.
</p>
]]>
    </longDesc>
    <property>
      <name>border</name>
      <className>int</className>
      <desc>Width in pixels of the border to be drawn around the table containing the options list</desc>
      <longDesc>Width in pixels of the border to be drawn around the table containing the options list.</longDesc>
      <defaultValue>Integer.MIN_VALUE</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>layout</name>
      <className>java.lang.String</className>
      <desc>Orientation of the options list</desc>
      <longDesc>Orientation of the options list. Valid values are 
"pageDirection" for a vertical layout, or "lineDirection" for
horizontal. The default value is "lineDirection".</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>label</name>
      <className>java.lang.String</className>
      <desc>A display name for this component</desc>
      <longDesc>A display name for this component.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>style</name>
      <className>java.lang.String</className>
      <desc>HTML: CSS styling instructions</desc>
      <longDesc>HTML: CSS styling instructions.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>styleClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class for this element</desc>
      <longDesc>The CSS class for this element.  Corresponds to the HTML 'class' attribute.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>tabindex</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies the position of this element within the tab order of the document</desc>
      <longDesc>HTML: Specifies the position of this element within the tab order of the document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onblur</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element loses focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element loses focus.</longDesc>
      <generated>true</generated>
      <clientEvent>blur</clientEvent>
    </property>
    <property>
      <name>onfocus</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element receives focus</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element receives focus.</longDesc>
      <generated>true</generated>
      <clientEvent>focus</clientEvent>
    </property>
    <property>
      <name>disabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>enabledClass</name>
      <className>java.lang.String</className>
      <desc>The CSS class assigned to the label element for enabled choices</desc>
      <longDesc>The CSS class assigned to the label element for enabled choices.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>accesskey</name>
      <className>java.lang.String</className>
      <desc>HTML: Sets the access key for this element</desc>
      <longDesc>HTML: Sets the access key for this element.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>onclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>click</clientEvent>
    </property>
    <property>
      <name>ondblclick</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the element is double-clicked</desc>
      <longDesc>HTML: Script to be invoked when the element is double-clicked.</longDesc>
      <generated>true</generated>
      <clientEvent>dblclick</clientEvent>
    </property>
    <property>
      <name>onkeydown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed down over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed down over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keydown</clientEvent>
    </property>
    <property>
      <name>onkeypress</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keypress</clientEvent>
    </property>
    <property>
      <name>onkeyup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when a key is released over this element</desc>
      <longDesc>HTML: Script to be invoked when a key is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>keyup</clientEvent>
    </property>
    <property>
      <name>onmousedown</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is pressed over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is pressed over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousedown</clientEvent>
    </property>
    <property>
      <name>onmousemove</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved while it is in this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved while it is in this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mousemove</clientEvent>
    </property>
    <property>
      <name>onmouseout</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moves out of this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moves out of this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseout</clientEvent>
    </property>
    <property>
      <name>onmouseover</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is moved into this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is moved into this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseover</clientEvent>
    </property>
    <property>
      <name>onmouseup</name>
      <className>java.lang.String</className>
      <desc>HTML: Script to be invoked when the pointing device is released over this element</desc>
      <longDesc>HTML: Script to be invoked when the pointing device is released over this element.</longDesc>
      <generated>true</generated>
      <clientEvent>mouseup</clientEvent>
    </property>
    <property>
      <name>onchange</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is modified</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is modified.</longDesc>
      <generated>true</generated>
      <clientEvent>change</clientEvent>
    </property>
    <property>
      <name>onselect</name>
      <className>java.lang.String</className>
      <desc>HTML: Specifies a script to be invoked when the element is selected</desc>
      <longDesc>HTML: Specifies a script to be invoked when the element is selected.</longDesc>
      <generated>true</generated>
      <clientEvent>select</clientEvent>
    </property>
    <property>
      <name>dir</name>
      <className>java.lang.String</className>
      <desc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left)</desc>
      <longDesc>HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left).</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>lang</name>
      <className>java.lang.String</className>
      <desc>HTML: The base language of this document</desc>
      <longDesc>HTML: The base language of this document.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>title</name>
      <className>java.lang.String</className>
      <desc>HTML: An advisory title for this element</desc>
      <longDesc>HTML: An advisory title for this element.  Often used by the user agent as a tooltip.</longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>disabled</name>
      <className>boolean</className>
      <desc>HTML: When true, this element cannot receive focus</desc>
      <longDesc>HTML: When true, this element cannot receive focus.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
    <property>
      <name>readonly</name>
      <className>boolean</className>
      <desc>HTML: When true, indicates that this component cannot be modified by the user</desc>
      <longDesc>HTML: When true, indicates that this component cannot be modified by the user.
The element may receive focus unless it has also been disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.component.ComponentResourceContainer</className>
    <parentClassName>javax.faces.component.UIPanel</parentClassName>
    <sourceClassName>org.apache.myfaces.component.ComponentResourceContainer</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIPanel</sourceClassParentClassName>
    <type>javax.faces.ComponentResourceContainer</type>
    <family>javax.faces.Panel</family>
    <desc>Dummy class that is used as a container for resources 
(see JSF 2</desc>
    <longDesc>Dummy class that is used as a container for resources 
(see JSF 2.0 rev A UIViewRoot.addComponentResource javadoc)</longDesc>
  </component>
  <component>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.component.UIRepeat</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.component.UIRepeat</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <name>ui:repeat</name>
    <type>facelets.ui.Repeat</type>
    <family>facelets</family>
    <rendererType>facelets.ui.Repeat</rendererType>
    <desc>TODO: PartialStateSaving and pluginize this component!</desc>
    <longDesc>TODO: PartialStateSaving and pluginize this component!</longDesc>
    <property>
      <name>offset</name>
      <className>int</className>
      <desc>no description</desc>
    </property>
    <property>
      <name>size</name>
      <className>int</className>
      <desc>no description</desc>
    </property>
    <property>
      <name>step</name>
      <className>int</className>
      <desc>no description</desc>
    </property>
    <property>
      <name>var</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
    </property>
    <property>
      <name>varStatus</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
    </property>
    <property>
      <name>value</name>
      <className>java.lang.Object</className>
      <desc>no description</desc>
    </property>
  </component>
  <component>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.html._HtmlOutputScript</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.html._HtmlOutputScript</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <rendererType>javax.faces.resource.Script</rendererType>
    <configExcluded>true</configExcluded>
    <desc>
<![CDATA[
TODO: DOCUMENT ME!
<p>
This tag is backed using a javax
]]>
    </desc>
    <longDesc>
<![CDATA[
TODO: DOCUMENT ME!
<p>
This tag is backed using a javax.faces.component.UIOutput component instance.
In other words, instances of this component class are created when it is resolved
a Resource annotation, so there is no concrete class or specific tag handler for it,
but there exists a concrete renderer for it.
</p>
]]>
    </longDesc>
    <property>
      <name>library</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>name</name>
      <className>java.lang.String</className>
      <required>true</required>
      <desc>no description</desc>
      <longDesc></longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>target</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.html._HtmlOutputStylesheet</className>
    <parentClassName>javax.faces.component.UIOutput</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.html._HtmlOutputStylesheet</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIOutput</sourceClassParentClassName>
    <rendererType>javax.faces.resource.Script</rendererType>
    <configExcluded>true</configExcluded>
    <desc>
<![CDATA[
TODO: DOCUMENT ME! This class is just for documentation purposes
<p>
This tag is backed using a javax
]]>
    </desc>
    <longDesc>
<![CDATA[
TODO: DOCUMENT ME! This class is just for documentation purposes
<p>
This tag is backed using a javax.faces.component.UIOutput component instance.
In other words, instances of this component class are created when it is resolved
a Resource annotation, so there is no concrete class or specific tag handler for it,
but there exists a concrete renderer for it.
</p>
]]>
    </longDesc>
    <property>
      <name>library</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <generated>true</generated>
    </property>
    <property>
      <name>name</name>
      <className>java.lang.String</className>
      <required>true</required>
      <desc>no description</desc>
      <longDesc></longDesc>
      <generated>true</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.ComponentRef</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.ComponentRef</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>facelets.ui.ComponentRef</type>
    <family>facelets</family>
    <desc>no description</desc>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
  </component>
  <component>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.UIDebug</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.UIDebug</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <name>ui:debug</name>
    <type>facelets.ui.Debug</type>
    <family>facelets</family>
    <desc>The debug tag will capture the component tree and variables when it is encoded, 
storing the data for retrieval later</desc>
    <longDesc>The debug tag will capture the component tree and variables when it is encoded, 
storing the data for retrieval later. You may launch the debug window at any time 
from your browser by pressing 'CTRL' + 'SHIFT' + 'D' (by default).

The debug tag doesn't need to be used with the facelet.DEVELOPMENT parameter.
The best place to put this tag is in your site's main template where it can be 
enabled/disabled across your whole application. 

If your application uses multiple windows, you might want to assign different 
hot keys to each one.</longDesc>
    <property>
      <name>id</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
    <property>
      <name>hotkey</name>
      <className>java.lang.String</className>
      <desc>The hot key to use in combination with 'CTRL' + 'SHIFT' to launch the debug window</desc>
      <longDesc>The hot key to use in combination with 'CTRL' + 'SHIFT' to launch the debug window. 
By default, when the debug tag is used, you may launch the debug window with 
'CTRL' + 'SHIFT' + 'D'. This value cannot be an EL expression.</longDesc>
    </property>
    <property>
      <name>binding</name>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
      <generated>false</generated>
    </property>
  </component>
  <component>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui._Component</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui._Component</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>facelets.ui.ComponentRef</type>
    <family>facelets</family>
    <rendererType>javax.faces.resource.Script</rendererType>
    <configExcluded>true</configExcluded>
    <desc>The component tag and the composition tag behave exactly the same, except the component
tag will insert a new UIComponent instance into the tree as the root of all the child 
components/fragments it has</desc>
    <longDesc>
<![CDATA[
The component tag and the composition tag behave exactly the same, except the component
tag will insert a new UIComponent instance into the tree as the root of all the child 
components/fragments it has.
<p>
The component class used for this tag is 
org.apache.myfaces.view.facelets.tag.ui.ComponentRef and the 
real java class that contains this description is not used on runtime.
</p>
]]>
    </longDesc>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
  </component>
  <component>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui._Fragment</className>
    <parentClassName>javax.faces.component.UIComponentBase</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui._Fragment</sourceClassName>
    <sourceClassParentClassName>javax.faces.component.UIComponentBase</sourceClassParentClassName>
    <type>facelets.ui.ComponentRef</type>
    <family>facelets</family>
    <rendererType>javax.faces.resource.Script</rendererType>
    <configExcluded>true</configExcluded>
    <desc>Just like composition has decorate as a non-trimming version of the same behavior,
component has fragment</desc>
    <longDesc>
<![CDATA[
Just like composition has decorate as a non-trimming version of the same behavior,
component has fragment. This allows you to logically insert a UIComponent into the 
tree and possibly bind this fragment to a JavaBean property or Map for management. 
The fragment tag was also added to Facelets to get around some of the optimizations 
used in handling text within your document. If you are using components such as 
&lt;f:panelGrid/&gt;, which renders its children, you may want more control over the 
building process that Facelets does and using a fragment tag will help guarantee 
parent/child relationships for you.

<p>
The component class used for this tag is 
org.apache.myfaces.view.facelets.tag.ui.ComponentRef and the 
real java class that contains this description is not used on runtime.
</p>
]]>
    </longDesc>
    <property>
      <name>rendered</name>
      <className>boolean</className>
      <desc>no description</desc>
      <tagExcluded>true</tagExcluded>
    </property>
  </component>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.BigDecimalConverter</className>
    <sourceClassName>javax.faces.convert.BigDecimalConverter</sourceClassName>
    <converterId>javax.faces.BigDecimal</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.BigIntegerConverter</className>
    <sourceClassName>javax.faces.convert.BigIntegerConverter</sourceClassName>
    <converterId>javax.faces.BigInteger</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.BooleanConverter</className>
    <sourceClassName>javax.faces.convert.BooleanConverter</sourceClassName>
    <converterId>javax.faces.Boolean</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.ByteConverter</className>
    <sourceClassName>javax.faces.convert.ByteConverter</sourceClassName>
    <converterId>javax.faces.Byte</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.CharacterConverter</className>
    <sourceClassName>javax.faces.convert.CharacterConverter</sourceClassName>
    <converterId>javax.faces.Character</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.DateTimeConverter</className>
    <sourceClassName>javax.faces.convert.DateTimeConverter</sourceClassName>
    <name>f:convertDateTime</name>
    <converterId>javax.faces.DateTime</converterId>
    <bodyContent>empty</bodyContent>
    <tagClass>org.apache.myfaces.taglib.core.ConvertDateTimeTag</tagClass>
    <generatedTagClass>true</generatedTagClass>
    <desc>This tag associates a date time converter with the nearest parent UIComponent</desc>
    <longDesc>
<![CDATA[
This tag associates a date time converter with the nearest parent UIComponent.

Unless otherwise specified, all attributes accept static values or EL expressions.

see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
]]>
    </longDesc>
    <property>
      <name>dateStyle</name>
      <className>java.lang.String</className>
      <desc>The style of the date</desc>
      <longDesc>The style of the date.  Values include: default, short, medium, 
long, and full.</longDesc>
    </property>
    <property>
      <name>locale</name>
      <className>java.util.Locale</className>
      <desc>The name of the locale to be used, instead of the default</desc>
      <longDesc>The name of the locale to be used, instead of the default.</longDesc>
    </property>
    <property>
      <name>pattern</name>
      <className>java.lang.String</className>
      <desc>A custom Date formatting pattern, in the format used by java</desc>
      <longDesc>A custom Date formatting pattern, in the format used by java.text.SimpleDateFormat.</longDesc>
    </property>
    <property>
      <name>timeStyle</name>
      <className>java.lang.String</className>
      <desc>The style of the time</desc>
      <longDesc>The style of the time.  Values include:  default, short, medium, long, 
and full.</longDesc>
    </property>
    <property>
      <name>timeZone</name>
      <className>java.util.TimeZone</className>
      <desc>The time zone to use instead of GMT (the default timezone)</desc>
      <longDesc>The time zone to use instead of GMT (the default timezone). When
this value is a value-binding to a TimeZone instance, that
timezone is used. Otherwise this value is treated as a String
containing a timezone id, ie as the ID parameter of method
java.util.TimeZone.getTimeZone(String).</longDesc>
    </property>
    <property>
      <name>type</name>
      <className>java.lang.String</className>
      <desc>Specifies whether the date, time, or both should be 
parsed/formatted</desc>
      <longDesc>Specifies whether the date, time, or both should be 
parsed/formatted.  Values include:  date, time, and both.
Default based on setting of timeStyle and dateStyle.</longDesc>
    </property>
    <property>
      <name>binding</name>
      <className>javax.faces.convert.DateTimeConverter</className>
      <desc>A ValueExpression that evaluates to a DateTimeConverter.</desc>
      <longDesc>A ValueExpression that evaluates to a DateTimeConverter.</longDesc>
      <generated>false</generated>
    </property>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.DoubleConverter</className>
    <sourceClassName>javax.faces.convert.DoubleConverter</sourceClassName>
    <converterId>javax.faces.Double</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.EnumConverter</className>
    <sourceClassName>javax.faces.convert.EnumConverter</sourceClassName>
    <converterId>javax.faces.Enum</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.FloatConverter</className>
    <sourceClassName>javax.faces.convert.FloatConverter</sourceClassName>
    <converterId>javax.faces.Float</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.IntegerConverter</className>
    <sourceClassName>javax.faces.convert.IntegerConverter</sourceClassName>
    <converterId>javax.faces.Integer</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.LongConverter</className>
    <sourceClassName>javax.faces.convert.LongConverter</sourceClassName>
    <converterId>javax.faces.Long</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.NumberConverter</className>
    <sourceClassName>javax.faces.convert.NumberConverter</sourceClassName>
    <name>f:convertNumber</name>
    <converterId>javax.faces.Number</converterId>
    <bodyContent>empty</bodyContent>
    <tagClass>org.apache.myfaces.taglib.core.ConvertNumberTag</tagClass>
    <generatedTagClass>true</generatedTagClass>
    <desc>This tag creates a number formatting converter and associates it
with the nearest parent UIComponent</desc>
    <longDesc>
<![CDATA[
This tag creates a number formatting converter and associates it
with the nearest parent UIComponent.

Unless otherwise specified, all attributes accept static values or EL expressions.

see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
]]>
    </longDesc>
    <property>
      <name>currencyCode</name>
      <className>java.lang.String</className>
      <desc>ISO 4217 currency code</desc>
      <longDesc>ISO 4217 currency code</longDesc>
    </property>
    <property>
      <name>currencySymbol</name>
      <className>java.lang.String</className>
      <desc>The currency symbol used to format a currency value</desc>
      <longDesc>The currency symbol used to format a currency value.  Defaults
to the currency symbol for locale.</longDesc>
    </property>
    <property>
      <name>groupingUsed</name>
      <className>boolean</className>
      <desc>Specifies whether output will contain grouping separators</desc>
      <longDesc>Specifies whether output will contain grouping separators.  Default: true.</longDesc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </property>
    <property>
      <name>integerOnly</name>
      <className>boolean</className>
      <desc>Specifies whether only the integer part of the input will be parsed</desc>
      <longDesc>Specifies whether only the integer part of the input will be parsed.  Default: false.</longDesc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </property>
    <property>
      <name>locale</name>
      <className>java.util.Locale</className>
      <desc>The name of the locale to be used, instead of the default as
specified in the faces configuration file</desc>
      <longDesc>The name of the locale to be used, instead of the default as
specified in the faces configuration file.</longDesc>
      <deferredValueType>java.lang.Object</deferredValueType>
    </property>
    <property>
      <name>maxFractionDigits</name>
      <className>int</className>
      <desc>The maximum number of digits in the fractional portion of the number</desc>
      <longDesc>The maximum number of digits in the fractional portion of the number.</longDesc>
      <deferredValueType>java.lang.Integer</deferredValueType>
    </property>
    <property>
      <name>maxIntegerDigits</name>
      <className>int</className>
      <desc>The maximum number of digits in the integer portion of the number</desc>
      <longDesc>The maximum number of digits in the integer portion of the number.</longDesc>
      <deferredValueType>java.lang.Integer</deferredValueType>
    </property>
    <property>
      <name>minFractionDigits</name>
      <className>int</className>
      <desc>The minimum number of digits in the fractional portion of the number</desc>
      <longDesc>The minimum number of digits in the fractional portion of the number.</longDesc>
      <deferredValueType>java.lang.Integer</deferredValueType>
    </property>
    <property>
      <name>minIntegerDigits</name>
      <className>int</className>
      <desc>The minimum number of digits in the integer portion of the number</desc>
      <longDesc>The minimum number of digits in the integer portion of the number.</longDesc>
      <deferredValueType>java.lang.Integer</deferredValueType>
    </property>
    <property>
      <name>pattern</name>
      <className>java.lang.String</className>
      <desc>A custom Date formatting pattern, in the format used by java</desc>
      <longDesc>A custom Date formatting pattern, in the format used by java.text.SimpleDateFormat.</longDesc>
    </property>
    <property>
      <name>type</name>
      <className>java.lang.String</className>
      <desc>The type of formatting/parsing to be performed</desc>
      <longDesc>The type of formatting/parsing to be performed.  Values include:
number, currency, and percent.  Default: number.</longDesc>
    </property>
    <property>
      <name>binding</name>
      <className>javax.faces.convert.NumberConverter</className>
      <desc>A ValueExpression that evaluates to a NumberConverter.</desc>
      <longDesc>A ValueExpression that evaluates to a NumberConverter.</longDesc>
      <generated>false</generated>
    </property>
  </converter>
  <converter>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.convert.ShortConverter</className>
    <sourceClassName>javax.faces.convert.ShortConverter</sourceClassName>
    <converterId>javax.faces.Short</converterId>
    <desc><![CDATA[see Javadoc of <a href="http://java]]></desc>
    <longDesc><![CDATA[see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>]]></longDesc>
  </converter>
  <validator>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.validator.BeanValidator</className>
    <sourceClassName>javax.faces.validator.BeanValidator</sourceClassName>
    <name>f:validateBean</name>
    <validatorId>javax.faces.Bean</validatorId>
    <bodyContent>empty</bodyContent>
    <desc>
<![CDATA[
<p>
<strong>BeanValidator</strong> is a {@link javax
]]>
    </desc>
    <longDesc>
<![CDATA[
<p>
<strong>BeanValidator</strong> is a {@link javax.faces.validator.Validator}
that doesn't do any validation itself, but delegates validation logic to
Bean Validation.
</p>
]]>
    </longDesc>
    <property>
      <name>validationGroups</name>
      <className>java.lang.String</className>
      <desc>Get the Bean Validation validation groups</desc>
      <longDesc>Get the Bean Validation validation groups.</longDesc>
    </property>
    <property>
      <name>disabled</name>
      <className>java.lang.Boolean</className>
      <desc>no description</desc>
    </property>
    <property>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
    </property>
    <property>
      <name>binding</name>
      <className>javax.faces.validator.BeanValidator</className>
      <desc>A ValueExpression that evaluates to a BeanValidator.</desc>
      <longDesc>A ValueExpression that evaluates to a BeanValidator.</longDesc>
      <generated>false</generated>
    </property>
  </validator>
  <validator>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.validator.DoubleRangeValidator</className>
    <sourceClassName>javax.faces.validator.DoubleRangeValidator</sourceClassName>
    <name>f:validateDoubleRange</name>
    <validatorId>javax.faces.DoubleRange</validatorId>
    <bodyContent>empty</bodyContent>
    <tagClass>org.apache.myfaces.taglib.core.ValidateDoubleRangeTag</tagClass>
    <generatedTagClass>true</generatedTagClass>
    <desc>Creates a validator and associateds it with the nearest parent
UIComponent</desc>
    <longDesc>
<![CDATA[
Creates a validator and associateds it with the nearest parent
UIComponent.  When invoked, the validator ensures that values are
valid doubles that lie within the minimum and maximum values specified.

Commonly associated with a h:inputText entity.

Unless otherwise specified, all attributes accept static values or EL expressions.

see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
]]>
    </longDesc>
    <property>
      <name>maximum</name>
      <className>double</className>
      <desc>The largest value that should be considered valid</desc>
      <longDesc>The largest value that should be considered valid.</longDesc>
      <deferredValueType>java.lang.Double</deferredValueType>
    </property>
    <property>
      <name>minimum</name>
      <className>double</className>
      <desc>The smallest value that should be considered valid</desc>
      <longDesc>The smallest value that should be considered valid.</longDesc>
      <deferredValueType>java.lang.Double</deferredValueType>
    </property>
    <property>
      <name>disabled</name>
      <className>java.lang.Boolean</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>binding</name>
      <className>javax.faces.validator.DoubleRangeValidator</className>
      <desc>A ValueExpression that evaluates to a DoubleRangeValidator.</desc>
      <longDesc>A ValueExpression that evaluates to a DoubleRangeValidator.</longDesc>
      <generated>false</generated>
    </property>
  </validator>
  <validator>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.validator.LengthValidator</className>
    <sourceClassName>javax.faces.validator.LengthValidator</sourceClassName>
    <name>f:validateLength</name>
    <validatorId>javax.faces.Length</validatorId>
    <bodyContent>empty</bodyContent>
    <tagClass>org.apache.myfaces.taglib.core.ValidateLengthTag</tagClass>
    <generatedTagClass>true</generatedTagClass>
    <desc>Creates a validator and associateds it with the nearest parent
UIComponent</desc>
    <longDesc>
<![CDATA[
Creates a validator and associateds it with the nearest parent
UIComponent.  When invoked, the validator ensures that values are
valid strings with a length that lies within the minimum and maximum
values specified.

Commonly associated with a h:inputText entity.

Unless otherwise specified, all attributes accept static values or EL expressions.

see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
]]>
    </longDesc>
    <property>
      <name>maximum</name>
      <className>int</className>
      <desc>The largest value that should be considered valid</desc>
      <longDesc>The largest value that should be considered valid.</longDesc>
      <deferredValueType>java.lang.Integer</deferredValueType>
    </property>
    <property>
      <name>minimum</name>
      <className>int</className>
      <desc>The smallest value that should be considered valid</desc>
      <longDesc>The smallest value that should be considered valid.</longDesc>
      <deferredValueType>java.lang.Integer</deferredValueType>
    </property>
    <property>
      <name>disabled</name>
      <className>java.lang.Boolean</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>binding</name>
      <className>javax.faces.validator.LengthValidator</className>
      <desc>A ValueExpression that evaluates to a LengthValidator.</desc>
      <longDesc>A ValueExpression that evaluates to a LengthValidator.</longDesc>
      <generated>false</generated>
    </property>
  </validator>
  <validator>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.validator.LongRangeValidator</className>
    <sourceClassName>javax.faces.validator.LongRangeValidator</sourceClassName>
    <name>f:validateLongRange</name>
    <validatorId>javax.faces.LongRange</validatorId>
    <bodyContent>empty</bodyContent>
    <tagClass>org.apache.myfaces.taglib.core.ValidateLongRangeTag</tagClass>
    <generatedTagClass>true</generatedTagClass>
    <desc>Creates a validator and associateds it with the nearest parent
UIComponent</desc>
    <longDesc>
<![CDATA[
Creates a validator and associateds it with the nearest parent
UIComponent.  When invoked, the validator ensures that values
are valid longs that lie within the minimum and maximum values specified.

Commonly associated with a h:inputText entity.

Unless otherwise specified, all attributes accept static values or EL expressions.

see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
]]>
    </longDesc>
    <property>
      <name>maximum</name>
      <className>long</className>
      <desc>The largest value that should be considered valid</desc>
      <longDesc>The largest value that should be considered valid.</longDesc>
      <deferredValueType>java.lang.Long</deferredValueType>
    </property>
    <property>
      <name>minimum</name>
      <className>long</className>
      <desc>The smallest value that should be considered valid</desc>
      <longDesc>The smallest value that should be considered valid.</longDesc>
      <deferredValueType>java.lang.Long</deferredValueType>
    </property>
    <property>
      <name>disabled</name>
      <className>java.lang.Boolean</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>binding</name>
      <className>javax.faces.validator.LongRangeValidator</className>
      <desc>A ValueExpression that evaluates to a LongRangeValidator.</desc>
      <longDesc>A ValueExpression that evaluates to a LongRangeValidator.</longDesc>
      <generated>false</generated>
    </property>
  </validator>
  <validator>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.validator.RegexValidator</className>
    <sourceClassName>javax.faces.validator.RegexValidator</sourceClassName>
    <name>f:validateRegex</name>
    <validatorId>javax.faces.RegularExpression</validatorId>
    <bodyContent>empty</bodyContent>
    <tagClass>org.apache.myfaces.taglib.core.ValidateRegexTag</tagClass>
    <generatedTagClass>true</generatedTagClass>
    <desc>
<![CDATA[
<p>
  <strong>RegexValidator</strong> is a {@link javax
]]>
    </desc>
    <longDesc>
<![CDATA[
<p>
  <strong>RegexValidator</strong> is a {@link javax.faces.validator.Validator}
  that checks the value of the corresponding component against specified
  pattern using Java regular expression syntax.

  The regular expression syntax accepted by the RegexValidator class is
  same as mentioned in class {@link java.util.regex.Pattern} in package
  <code>java.util.regex</code>.
</p>

<p>
  The following algorithm is implemented:
</p>

<ul>
  <li>If the passed value is <code>null</code>, exit immediately.</li>
  <li>
    If the passed value is not a String, exit with a {@link #NOT_MATCHED_MESSAGE_ID}
    error message.
  </li>
  <li>
    If no pattern has been set, or pattern resolves to <code>null</code> or an
    empty String, throw a {@link javax.faces.validator.ValidatorException}
    with a {@link #PATTERN_NOT_SET_MESSAGE_ID} message.
  </li>
  <li>
    If pattern is not a valid regular expression, according to the rules as defined
    in class {@link java.util.regex.Pattern}, throw a {@link ValidatorException}
    with a (@link #MATCH_EXCEPTION_MESSAGE_ID} message.
  </li>
  <li>
    If a <code>pattern</code> property has been configured on this
    {@link javax.faces.validator.Validator}, check the passed value against this pattern.
    If value does not match pattern throw a {@link ValidatorException}
    containing a {@link #NOT_MATCHED_MESSAGE_ID} message.
  </li>
</ul>
]]>
    </longDesc>
    <property>
      <name>pattern</name>
      <className>java.lang.String</className>
      <required>true</required>
      <desc>Return the ValueExpression that yields the regular expression pattern when evaluated</desc>
      <longDesc>Return the ValueExpression that yields the regular expression pattern when evaluated.</longDesc>
    </property>
    <property>
      <name>disabled</name>
      <className>java.lang.Boolean</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>binding</name>
      <className>javax.faces.validator.RegexValidator</className>
      <desc>A ValueExpression that evaluates to a RegexValidator.</desc>
      <longDesc>A ValueExpression that evaluates to a RegexValidator.</longDesc>
      <generated>false</generated>
    </property>
  </validator>
  <validator>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.validator.RequiredValidator</className>
    <sourceClassName>javax.faces.validator.RequiredValidator</sourceClassName>
    <name>f:validateRequired</name>
    <validatorId>javax.faces.Required</validatorId>
    <bodyContent>empty</bodyContent>
    <desc>Check if a value is empty, in the same way as set UIInput required 
property to true (including all rules related to this property)</desc>
    <longDesc>Check if a value is empty, in the same way as set UIInput required 
property to true (including all rules related to this property).</longDesc>
    <property>
      <name>disabled</name>
      <className>java.lang.Boolean</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
      <faceletsOnly>true</faceletsOnly>
    </property>
    <property>
      <name>binding</name>
      <className>javax.faces.validator.RequiredValidator</className>
      <desc>A ValueExpression that evaluates to a RequiredValidator.</desc>
      <longDesc>A ValueExpression that evaluates to a RequiredValidator.</longDesc>
      <generated>false</generated>
    </property>
  </validator>
  <renderKit>
    <renderKitId>HTML_BASIC</renderKitId>
    <className>org.apache.myfaces.renderkit.html.HtmlRenderKitImpl</className>
    <renderer>
      <className>org.apache.myfaces.view.facelets.component.RepeatRenderer</className>
      <componentFamily>facelets</componentFamily>
      <rendererType>facelets.ui.Repeat</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlButtonRenderer</className>
      <componentFamily>javax.faces.Command</componentFamily>
      <rendererType>javax.faces.Button</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlLinkRenderer</className>
      <componentFamily>javax.faces.Command</componentFamily>
      <rendererType>javax.faces.Link</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlTableRenderer</className>
      <componentFamily>javax.faces.Data</componentFamily>
      <rendererType>javax.faces.Table</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlFormRenderer</className>
      <componentFamily>javax.faces.Form</componentFamily>
      <rendererType>javax.faces.Form</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlImageRenderer</className>
      <componentFamily>javax.faces.Graphic</componentFamily>
      <rendererType>javax.faces.Image</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlHiddenRenderer</className>
      <componentFamily>javax.faces.Input</componentFamily>
      <rendererType>javax.faces.Hidden</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlSecretRenderer</className>
      <componentFamily>javax.faces.Input</componentFamily>
      <rendererType>javax.faces.Secret</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlTextRenderer</className>
      <componentFamily>javax.faces.Input</componentFamily>
      <rendererType>javax.faces.Text</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlTextareaRenderer</className>
      <componentFamily>javax.faces.Input</componentFamily>
      <rendererType>javax.faces.Textarea</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlMessagesRenderer</className>
      <componentFamily>javax.faces.Messages</componentFamily>
      <rendererType>javax.faces.Messages</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlMessageRenderer</className>
      <componentFamily>javax.faces.Message</componentFamily>
      <rendererType>javax.faces.Message</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlCompositeComponentRenderer</className>
      <componentFamily>javax.faces.NamingContainer</componentFamily>
      <rendererType>javax.faces.Composite</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlOutcomeTargetButtonRenderer</className>
      <componentFamily>javax.faces.OutcomeTarget</componentFamily>
      <rendererType>javax.faces.Button</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlLinkRenderer</className>
      <componentFamily>javax.faces.OutcomeTarget</componentFamily>
      <rendererType>javax.faces.Link</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlBodyRenderer</className>
      <componentFamily>javax.faces.Output</componentFamily>
      <rendererType>javax.faces.Body</rendererType>
      <description>Renderer used by h:body component</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlCompositeFacetRenderer</className>
      <componentFamily>javax.faces.Output</componentFamily>
      <rendererType>javax.faces.CompositeFacet</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlFormatRenderer</className>
      <componentFamily>javax.faces.Output</componentFamily>
      <rendererType>javax.faces.Format</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlHeadRenderer</className>
      <componentFamily>javax.faces.Output</componentFamily>
      <rendererType>javax.faces.Head</rendererType>
      <description>Renderer used by h:head component</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlLabelRenderer</className>
      <componentFamily>javax.faces.Output</componentFamily>
      <rendererType>javax.faces.Label</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlLinkRenderer</className>
      <componentFamily>javax.faces.Output</componentFamily>
      <rendererType>javax.faces.Link</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlTextRenderer</className>
      <componentFamily>javax.faces.Output</componentFamily>
      <rendererType>javax.faces.Text</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlScriptRenderer</className>
      <componentFamily>javax.faces.Output</componentFamily>
      <rendererType>javax.faces.resource.Script</rendererType>
      <description>Renderer used by h:outputScript component</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlStylesheetRenderer</className>
      <componentFamily>javax.faces.Output</componentFamily>
      <rendererType>javax.faces.resource.Stylesheet</rendererType>
      <description>Renderer used by h:outputStylesheet component</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlGridRenderer</className>
      <componentFamily>javax.faces.Panel</componentFamily>
      <rendererType>javax.faces.Grid</rendererType>
      <description>X-CHECKED: tlddoc h:panelGrid 1</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlGroupRenderer</className>
      <componentFamily>javax.faces.Panel</componentFamily>
      <rendererType>javax.faces.Group</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlCheckboxRenderer</className>
      <componentFamily>javax.faces.SelectBoolean</componentFamily>
      <rendererType>javax.faces.Checkbox</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlCheckboxRenderer</className>
      <componentFamily>javax.faces.SelectMany</componentFamily>
      <rendererType>javax.faces.Checkbox</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlListboxRenderer</className>
      <componentFamily>javax.faces.SelectMany</componentFamily>
      <rendererType>javax.faces.Listbox</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlMenuRenderer</className>
      <componentFamily>javax.faces.SelectMany</componentFamily>
      <rendererType>javax.faces.Menu</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlListboxRenderer</className>
      <componentFamily>javax.faces.SelectOne</componentFamily>
      <rendererType>javax.faces.Listbox</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlMenuRenderer</className>
      <componentFamily>javax.faces.SelectOne</componentFamily>
      <rendererType>javax.faces.Menu</rendererType>
      <description>no description</description>
    </renderer>
    <renderer>
      <className>org.apache.myfaces.renderkit.html.HtmlRadioRenderer</className>
      <componentFamily>javax.faces.SelectOne</componentFamily>
      <rendererType>javax.faces.Radio</rendererType>
      <description>no description</description>
    </renderer>
  </renderKit>
  <tag>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.webapp.FacetTag</className>
    <sourceClassName>javax.faces.webapp.FacetTag</sourceClassName>
    <sourceClassParentClassName>javax.servlet.jsp.tagext.TagSupport</sourceClassParentClassName>
    <name>f:facet</name>
    <bodyContent>JSP</bodyContent>
    <desc>This tag adds its child as a facet of the nearest parent UIComponent</desc>
    <longDesc>
<![CDATA[
This tag adds its child as a facet of the nearest parent UIComponent. A child consisting of multiple elements should
be nested within a container component (i.e., within an h:panelGroup for HTML library components).

Unless otherwise specified, all attributes accept static values or EL expressions.

see Javadoc of <a href="http://java.sun.com/javaee/javaserverfaces/1.2/docs/api/index.html">JSF Specification</a>
]]>
    </longDesc>
    <attribute>
      <name>name</name>
      <className>java.lang.String</className>
      <required>true</required>
      <desc>The name of the facet to be created</desc>
      <longDesc>The name of the facet to be created. This must be a static value.</longDesc>
    </attribute>
  </tag>
  <tag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.taglib.core.ActionListenerTag</className>
    <sourceClassName>org.apache.myfaces.taglib.core.ActionListenerTag</sourceClassName>
    <sourceClassParentClassName>org.apache.myfaces.taglib.core.GenericListenerTag</sourceClassParentClassName>
    <name>f:actionListener</name>
    <bodyContent>empty</bodyContent>
    <desc>This tag creates an instance of the specified ActionListener, and associates it with the nearest parent UIComponent</desc>
    <longDesc>
<![CDATA[
This tag creates an instance of the specified ActionListener, and associates it with the nearest parent UIComponent.
<p>
Unless otherwise specified, all attributes accept static values or EL expressions.
</p>
]]>
    </longDesc>
    <attribute>
      <name>type</name>
      <className>javax.el.ValueExpression</className>
      <desc>The fully qualified class name of the ActionListener class</desc>
      <longDesc>The fully qualified class name of the ActionListener class.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>binding</name>
      <className>javax.el.ValueExpression</className>
      <desc>Value binding expression that evaluates to an object that implements javax</desc>
      <longDesc>Value binding expression that evaluates to an object that implements javax.faces.event.ActionListener.</longDesc>
      <deferredValueType>javax.faces.event.ActionListener</deferredValueType>
    </attribute>
  </tag>
  <tag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.taglib.core.AttributeTag</className>
    <sourceClassName>org.apache.myfaces.taglib.core.AttributeTag</sourceClassName>
    <sourceClassParentClassName>javax.servlet.jsp.tagext.TagSupport</sourceClassParentClassName>
    <name>f:attribute</name>
    <bodyContent>empty</bodyContent>
    <desc>This tag associates an attribute with the nearest parent UIComponent</desc>
    <longDesc>
<![CDATA[
This tag associates an attribute with the nearest parent UIComponent.
<p>
When the value is not an EL expression, this tag has the same effect as calling component.getAttributes.put(name,
value). When the attribute name specified matches a standard property of the component, that property is set. However
it is also valid to assign attributes to components using any arbitrary name; the component itself won't make any use
of these but other objects such as custom renderers, validators or action listeners can later retrieve the attribute
from the component by name.
</p>
<p>
When the value is an EL expression, this tag has the same effect as calling component.setValueBinding. A call to
method component.getAttributes().get(name) will then cause that expression to be evaluated and the result of the
expression is returned, not the original EL expression string.
</p>
<p>
See the javadoc for UIComponent.getAttributes for more details.
</p>
<p>
Unless otherwise specified, all attributes accept static values or EL expressions.
</p>
]]>
    </longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <desc>The name of the attribute</desc>
      <longDesc>The name of the attribute.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>value</name>
      <className>javax.el.ValueExpression</className>
      <desc>The attribute's value</desc>
      <longDesc>The attribute's value.</longDesc>
      <deferredValueType>java.lang.Object</deferredValueType>
    </attribute>
  </tag>
  <tag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.taglib.core.ConverterImplTag</className>
    <sourceClassName>org.apache.myfaces.taglib.core.ConverterImplTag</sourceClassName>
    <sourceClassParentClassName>javax.faces.webapp.ConverterELTag</sourceClassParentClassName>
    <name>f:converter</name>
    <bodyContent>empty</bodyContent>
    <desc>This tag creates an instance of the specified Converter, and associates it with the nearest parent UIComponent</desc>
    <longDesc>This tag creates an instance of the specified Converter, and associates it with the nearest parent UIComponent.</longDesc>
    <attribute>
      <name>converterId</name>
      <className>javax.el.ValueExpression</className>
      <desc>The converter's registered ID</desc>
      <longDesc>The converter's registered ID.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>binding</name>
      <className>javax.el.ValueExpression</className>
      <desc>A ValueExpression that evaluates to a Converter</desc>
      <longDesc>A ValueExpression that evaluates to a Converter.</longDesc>
      <deferredValueType>javax.faces.convert.Converter</deferredValueType>
    </attribute>
  </tag>
  <tag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.taglib.core.LoadBundleTag</className>
    <sourceClassName>org.apache.myfaces.taglib.core.LoadBundleTag</sourceClassName>
    <sourceClassParentClassName>javax.servlet.jsp.tagext.TagSupport</sourceClassParentClassName>
    <name>f:loadBundle</name>
    <bodyContent>empty</bodyContent>
    <desc>Loads a resource bundle and saves it as a variable in the request scope</desc>
    <longDesc>
<![CDATA[
Loads a resource bundle and saves it as a variable in the request scope.
<p>
Unless otherwise specified, all attributes accept static values or EL expressions.
</p>
<p>
TODO: We should find a way to save loaded bundles in the state, because otherwise on the next request the bundle map
will not be present before the render phase and value bindings that reference to the bundle will always log annoying
"Variable 'xxx' could not be resolved" error messages.
</p>
]]>
    </longDesc>
    <attribute>
      <name>basename</name>
      <className>javax.el.ValueExpression</className>
      <desc>The base name of the resource bundle</desc>
      <longDesc>The base name of the resource bundle.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>var</name>
      <className>java.lang.String</className>
      <required>true</required>
      <desc>The name of the variable in request scope that the resources are saved to</desc>
      <longDesc>The name of the variable in request scope that the resources are saved to. This must be a static value.</longDesc>
    </attribute>
  </tag>
  <tag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.taglib.core.PhaseListenerTag</className>
    <sourceClassName>org.apache.myfaces.taglib.core.PhaseListenerTag</sourceClassName>
    <sourceClassParentClassName>javax.servlet.jsp.tagext.TagSupport</sourceClassParentClassName>
    <name>f:phaseListener</name>
    <bodyContent>empty</bodyContent>
    <desc>Register a PhaseListener instance</desc>
    <longDesc>Register a PhaseListener instance</longDesc>
    <attribute>
      <name>type</name>
      <className>javax.el.ValueExpression</className>
      <desc>Class name of the PhaseListener to be created and registered</desc>
      <longDesc>Class name of the PhaseListener to be created and registered.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>binding</name>
      <className>javax.el.ValueExpression</className>
      <desc>Value binding expression that evaluates to a PhaseListener</desc>
      <longDesc>Value binding expression that evaluates to a PhaseListener.</longDesc>
      <deferredValueType>javax.faces.event.PhaseListener</deferredValueType>
    </attribute>
  </tag>
  <tag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.taglib.core.SetPropertyActionListenerTag</className>
    <sourceClassName>org.apache.myfaces.taglib.core.SetPropertyActionListenerTag</sourceClassName>
    <sourceClassParentClassName>javax.servlet.jsp.tagext.TagSupport</sourceClassParentClassName>
    <name>f:setPropertyActionListener</name>
    <bodyContent>empty</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <attribute>
      <name>target</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>ValueExpression for the destination of the value attribute</desc>
      <longDesc>ValueExpression for the destination of the value attribute.</longDesc>
      <deferredValueType>java.lang.Object</deferredValueType>
    </attribute>
    <attribute>
      <name>value</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>ValueExpression for the value of the target attribute</desc>
      <longDesc>ValueExpression for the value of the target attribute.</longDesc>
      <deferredValueType>java.lang.Object</deferredValueType>
    </attribute>
  </tag>
  <tag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.taglib.core.ValidatorImplTag</className>
    <sourceClassName>org.apache.myfaces.taglib.core.ValidatorImplTag</sourceClassName>
    <sourceClassParentClassName>javax.faces.webapp.ValidatorELTag</sourceClassParentClassName>
    <name>f:validator</name>
    <bodyContent>empty</bodyContent>
    <desc>Creates a validator and associates it with the nearest parent UIComponent</desc>
    <longDesc>
<![CDATA[
Creates a validator and associates it with the nearest parent UIComponent.
<p>
During the validation phase (or the apply-request-values phase for immediate components), if the associated component
has any submitted value and the conversion of that value to the required type has succeeded then the specified
validator type is invoked to test the validity of the converted value.
</p>
<p>
Commonly associated with an h:inputText entity, but may be applied to any input component.
</p>
<p>
Some validators may allow the component to use attributes to define component-specific validation constraints; see
the f:attribute tag. See also the "validator" attribute of all input components, which allows a component to specify
an arbitrary validation &lt;i&gt;method&lt;/i&gt; (rather than a registered validation type, as this tag does).
</p>
<p>
Unless otherwise specified, all attributes accept static values or EL expressions.
</p>
]]>
    </longDesc>
    <attribute>
      <name>validatorId</name>
      <className>javax.el.ValueExpression</className>
      <desc>The registered ID of the desired Validator</desc>
      <longDesc>The registered ID of the desired Validator.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>binding</name>
      <className>javax.el.ValueExpression</className>
      <desc>A ValueExpression that evaluates to an implementation of the javax</desc>
      <longDesc>A ValueExpression that evaluates to an implementation of the javax.faces.validator.Validator interface.</longDesc>
      <deferredValueType>javax.faces.validator.Validator</deferredValueType>
    </attribute>
  </tag>
  <tag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.taglib.core.ValueChangeListenerTag</className>
    <sourceClassName>org.apache.myfaces.taglib.core.ValueChangeListenerTag</sourceClassName>
    <sourceClassParentClassName>org.apache.myfaces.taglib.core.GenericListenerTag</sourceClassParentClassName>
    <name>f:valueChangeListener</name>
    <bodyContent>empty</bodyContent>
    <desc>Adds the specified ValueChangeListener to the nearest parent UIComponent (which is expected to be a UIInput
component)</desc>
    <longDesc>
<![CDATA[
Adds the specified ValueChangeListener to the nearest parent UIComponent (which is expected to be a UIInput
component).
<p>
Whenever the form containing the parent UIComponent is submitted, an instance of the specified type is created. If
the submitted value from the component is different from the component's current value then a ValueChangeEvent is
queued. When the ValueChangeEvent is processed (at end of the validate phase for non-immediate components, or at end
of the apply-request-values phase for immediate components) the object's processValueChange method is invoked.
</p>
<p>
Unless otherwise specified, all attributes accept static values or EL expressions.
</p>
]]>
    </longDesc>
    <attribute>
      <name>type</name>
      <className>javax.el.ValueExpression</className>
      <desc>The name of a Java class that implements ValueChangeListener</desc>
      <longDesc>The name of a Java class that implements ValueChangeListener.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>binding</name>
      <className>javax.el.ValueExpression</className>
      <desc>Value binding expression that evaluates to an implementation of the javax</desc>
      <longDesc>Value binding expression that evaluates to an implementation of the javax.faces.event.ValueChangeListener
interface.</longDesc>
      <deferredValueType>javax.faces.event.ValueChangeListener</deferredValueType>
    </attribute>
  </tag>
  <tag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.taglib.core.VerbatimTag</className>
    <sourceClassName>org.apache.myfaces.taglib.core.VerbatimTag</sourceClassName>
    <sourceClassParentClassName>org.apache.myfaces.shared.taglib.UIComponentELTagBase</sourceClassParentClassName>
    <name>f:verbatim</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <attribute>
      <name>escape</name>
      <className>javax.el.ValueExpression</className>
      <desc>If true, generated markup is escaped</desc>
      <longDesc>If true, generated markup is escaped. Default: false.</longDesc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>rendered</name>
      <className>javax.el.ValueExpression</className>
      <desc>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on
any subsequent form submit</desc>
      <longDesc>Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on
any subsequent form submit. The default value for this property is true.</longDesc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </attribute>
  </tag>
  <faceletTag>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.view.facelets.FaceletsAttachedObjectHandler</className>
    <sourceClassName>javax.faces.view.facelets.FaceletsAttachedObjectHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.DelegatingMetaTagHandler</sourceClassParentClassName>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <attribute>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>{@inheritDoc}</desc>
      <longDesc>{@inheritDoc}</longDesc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.view.facelets.BehaviorHandler</className>
    <parentClassName>javax.faces.view.facelets.FaceletsAttachedObjectHandler</parentClassName>
    <sourceClassName>javax.faces.view.facelets.BehaviorHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.FaceletsAttachedObjectHandler</sourceClassParentClassName>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.view.facelets.ConverterHandler</className>
    <parentClassName>javax.faces.view.facelets.FaceletsAttachedObjectHandler</parentClassName>
    <sourceClassName>javax.faces.view.facelets.ConverterHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.FaceletsAttachedObjectHandler</sourceClassParentClassName>
    <bodyContent>JSP</bodyContent>
    <desc>Handles setting a Converter instance on a ValueHolder</desc>
    <longDesc>
<![CDATA[
Handles setting a Converter instance on a ValueHolder. Will wire all attributes set to the Converter instance
created/fetched. Uses the "binding" attribute for grabbing instances to apply attributes to. <p/> Will only
set/create Converter is the passed UIComponent's parent is null, signifying that it wasn't restored from an existing
tree.
]]>
    </longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-api</modelId>
    <className>javax.faces.view.facelets.ValidatorHandler</className>
    <parentClassName>javax.faces.view.facelets.FaceletsAttachedObjectHandler</parentClassName>
    <sourceClassName>javax.faces.view.facelets.ValidatorHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.FaceletsAttachedObjectHandler</sourceClassParentClassName>
    <bodyContent>JSP</bodyContent>
    <desc>Handles setting a Validator instance on a EditableValueHolder</desc>
    <longDesc>
<![CDATA[
Handles setting a Validator instance on a EditableValueHolder. Will wire all attributes set to the Validator instance
created/fetched. Uses the "binding" attribute for grabbing instances to apply attributes to. <p/> Will only
set/create Validator is the passed UIComponent's parent is null, signifying that it wasn't restored from an existing
tree.
]]>
    </longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.AttachedObjectTargetHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.AttachedObjectTargetHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <bodyContent>JSP</bodyContent>
    <desc>composite:actionSource, composite:valueHolder and composite:editableValueHolder
do the same: register an AttachedObjectTarget on the "targetList" mentioned on
ViewDeclarationLanguage</desc>
    <longDesc>composite:actionSource, composite:valueHolder and composite:editableValueHolder
do the same: register an AttachedObjectTarget on the "targetList" mentioned on
ViewDeclarationLanguage.retargetAttachedObjects. AttachedObjectTargetHandler group the
common behavior</longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>Indicate the name of the attribute that the component should expose
to page authors</desc>
      <longDesc>Indicate the name of the attribute that the component should expose
to page authors.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>targets</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.ActionSourceHandler</className>
    <parentClassName>org.apache.myfaces.view.facelets.tag.composite.AttachedObjectTargetHandler</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.ActionSourceHandler</sourceClassName>
    <sourceClassParentClassName>org.apache.myfaces.view.facelets.tag.composite.AttachedObjectTargetHandler</sourceClassParentClassName>
    <name>composite:actionSource</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.AttributeHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.AttributeHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>composite:attribute</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>no description</desc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>targets</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>default</name>
      <className>javax.el.ValueExpression</className>
      <desc>If this property is set and the attribute does not have any
value (null), the value set on this property is returned as default
instead null</desc>
      <longDesc>If this property is set and the attribute does not have any
value (null), the value set on this property is returned as default
instead null.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>displayName</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>required</name>
      <className>javax.el.ValueExpression</className>
      <desc>
<![CDATA[
Indicate if the attribute is required or not
<p>
Myfaces specific feature: this attribute is checked only if project stage is
not ProjectStage
]]>
      </desc>
      <longDesc>
<![CDATA[
Indicate if the attribute is required or not
<p>
Myfaces specific feature: this attribute is checked only if project stage is
not ProjectStage.Production when a composite component is created.</p>
]]>
      </longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>preferred</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>expert</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>shortDescription</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>method-signature</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>type</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>hidden</name>
      <className>javax.el.ValueExpression</className>
      <desc>The "hidden" flag is used to identify features that are intended only 
for tool use, and which should not be exposed to humans</desc>
      <longDesc>The "hidden" flag is used to identify features that are intended only 
for tool use, and which should not be exposed to humans.
Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.ClientBehaviorHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.ClientBehaviorHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>composite:clientBehavior</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <attribute>
      <name>event</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>This attribute is used as the target event 
name, so client behaviors pointing to "name" 
will be attached on the related components 
identified by "targets" attribute and on 
the event name this attribute holds</desc>
      <longDesc>This attribute is used as the target event 
name, so client behaviors pointing to "name" 
will be attached on the related components 
identified by "targets" attribute and on 
the event name this attribute holds. In other
words, this is the "real" event name.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>This attribute represents the source event name 
that is used when instances of the composite 
component are used</desc>
      <longDesc>This attribute represents the source event name 
that is used when instances of the composite 
component are used. In other
words, this is the "logical" event name.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>default</name>
      <className>javax.el.ValueExpression</className>
      <desc>Indicate this clientBehavior description is the one
that has to be taken by default</desc>
      <longDesc>Indicate this clientBehavior description is the one
that has to be taken by default. There should be only
one clientBehavior with this property set to true in
a composite component interface description.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>targets</name>
      <className>javax.el.ValueExpression</className>
      <desc>Contains a list of clientIds separated by spaces that 
identify the component(s) that will be used to attach 
client behaviors from the composite component</desc>
      <longDesc>Contains a list of clientIds separated by spaces that 
identify the component(s) that will be used to attach 
client behaviors from the composite component.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.EditableValueHolderHandler</className>
    <parentClassName>org.apache.myfaces.view.facelets.tag.composite.AttachedObjectTargetHandler</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.EditableValueHolderHandler</sourceClassName>
    <sourceClassParentClassName>org.apache.myfaces.view.facelets.tag.composite.AttachedObjectTargetHandler</sourceClassParentClassName>
    <name>composite:editableValueHolder</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.ExtensionHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.ExtensionHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>composite:extension</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.FacetHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.FacetHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>composite:facet</name>
    <bodyContent>JSP</bodyContent>
    <desc>Define the facets used by this composite component</desc>
    <longDesc>
<![CDATA[
Define the facets used by this composite component.
<p>
This tag is used inside composite:interface tag. All facets
should be saved under the key UIComponent.FACETS_KEY on the
bean descriptor map as a Map&lt;String, PropertyDescriptor&gt;
</p>
]]>
    </longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>displayName</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>required</name>
      <className>javax.el.ValueExpression</className>
      <desc>
<![CDATA[
Indicate if the attribute is required or not
<p>
Myfaces specific feature: this attribute is checked only if project stage is
not ProjectStage
]]>
      </desc>
      <longDesc>
<![CDATA[
Indicate if the attribute is required or not
<p>
Myfaces specific feature: this attribute is checked only if project stage is
not ProjectStage.Production when a composite component is created.
</p>
]]>
      </longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>preferred</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>expert</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>shortDescription</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>hidden</name>
      <className>javax.el.ValueExpression</className>
      <desc>The "hidden" flag is used to identify features that are intended only 
for tool use, and which should not be exposed to humans</desc>
      <longDesc>The "hidden" flag is used to identify features that are intended only 
for tool use, and which should not be exposed to humans.
Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.ImplementationHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.ImplementationHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>composite:implementation</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.InsertChildrenHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.InsertChildrenHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>composite:insertChildren</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.InsertFacetHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.InsertFacetHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>composite:insertFacet</name>
    <bodyContent>JSP</bodyContent>
    <desc>Insert or move the facet from the composite component body to the expected location</desc>
    <longDesc>Insert or move the facet from the composite component body to the expected location.</longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>The name that identify the current facet</desc>
      <longDesc>The name that identify the current facet.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>required</name>
      <className>javax.el.ValueExpression</className>
      <desc>Define if the facet to be inserted is required or not for every instance of
this composite component</desc>
      <longDesc>Define if the facet to be inserted is required or not for every instance of
this composite component.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.InterfaceHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.InterfaceHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>composite:interface</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>componentType</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>displayName</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>preferred</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>expert</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>shortDescription</name>
      <className>javax.el.ValueExpression</className>
      <desc>Only available if ProjectStage is Development</desc>
      <longDesc>Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>hidden</name>
      <className>javax.el.ValueExpression</className>
      <desc>The "hidden" flag is used to identify features that are intended only 
for tool use, and which should not be exposed to humans</desc>
      <longDesc>The "hidden" flag is used to identify features that are intended only 
for tool use, and which should not be exposed to humans.
Only available if ProjectStage is Development.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.RenderFacetHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.RenderFacetHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.ComponentHandler</sourceClassParentClassName>
    <name>composite:renderFacet</name>
    <bodyContent>JSP</bodyContent>
    <desc>Render the facet defined on the composite component body to the current location</desc>
    <longDesc>Render the facet defined on the composite component body to the current location</longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>The name that identify the current facet</desc>
      <longDesc>The name that identify the current facet.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>required</name>
      <className>javax.el.ValueExpression</className>
      <desc>Define if the facet to be inserted is required or not for every instance of
this composite component</desc>
      <longDesc>Define if the facet to be inserted is required or not for every instance of
this composite component.</longDesc>
      <deferredValueType>boolean</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.composite.ValueHolderHandler</className>
    <parentClassName>org.apache.myfaces.view.facelets.tag.composite.AttachedObjectTargetHandler</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.composite.ValueHolderHandler</sourceClassName>
    <sourceClassParentClassName>org.apache.myfaces.view.facelets.tag.composite.AttachedObjectTargetHandler</sourceClassParentClassName>
    <name>composite:valueHolder</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.ActionListenerHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.ActionListenerHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:actionListener</name>
    <bodyContent>empty</bodyContent>
    <desc>Register an ActionListener instance on the UIComponent associated with the closest parent UIComponent custom action</desc>
    <longDesc>
<![CDATA[
Register an ActionListener instance on the UIComponent associated with the closest parent UIComponent custom action.
<p/> See <a target="_new"
href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/actionListener.html">tag documentation</a>.
]]>
    </longDesc>
    <tagClass>org.apache.myfaces.taglib.core.ActionListenerTag</tagClass>
    <attribute>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>TODO: Document me!</desc>
      <longDesc>TODO: Document me!</longDesc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.AjaxHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.AjaxHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:ajax</name>
    <bodyContent>JSP</bodyContent>
    <desc>This tag creates an instance of AjaxBehavior, and associates it with the nearest 
parent UIComponent that implements ClientBehaviorHolder interface</desc>
    <longDesc>
<![CDATA[
This tag creates an instance of AjaxBehavior, and associates it with the nearest 
parent UIComponent that implements ClientBehaviorHolder interface. This tag can
be used on single or composite components.
<p>
Unless otherwise specified, all attributes accept static values or EL expressions.
</p>
<p>
According to the documentation, the tag handler implementing this tag should meet
the following conditions:  
</p>
<ul>
<li>Since this tag attach objects to UIComponent instances, and those instances 
implements Behavior interface, this component should implement 
BehaviorHolderAttachedObjectHandler interface.</li>
<li>f:ajax does not support binding property. In theory we should do something similar
to f:convertDateTime tag does: extends from ConverterHandler and override setAttributes
method, but in this case BehaviorTagHandlerDelegate has binding property defined, so
if we extend from BehaviorHandler we add binding support to f:ajax.</li>
<li>This tag works as a attached object handler, but note on the api there is no component
to define a target for a behavior. See comment inside apply() method.</li>
</ul>
]]>
    </longDesc>
    <attribute>
      <name>disabled</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>event</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>execute</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.Object</deferredValueType>
    </attribute>
    <attribute>
      <name>immediate</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </attribute>
    <attribute>
      <name>listener</name>
      <className>javax.el.MethodExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredMethodSignature>public void m(javax.faces.event.AjaxBehaviorEvent evt) throws javax.faces.event.AbortProcessingException</deferredMethodSignature>
    </attribute>
    <attribute>
      <name>onevent</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>onerror</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>render</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <longDesc></longDesc>
      <deferredValueType>java.lang.Object</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.AttributeHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.AttributeHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:attribute</name>
    <bodyContent>empty</bodyContent>
    <desc>Sets the specified name and attribute on the parent UIComponent</desc>
    <longDesc>
<![CDATA[
Sets the specified name and attribute on the parent UIComponent. If the "value" specified is not a literal, it will
instead set the ValueExpression on the UIComponent. <p /> See <a target="_new"
href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/attribute.html">tag documentation</a>.
]]>
    </longDesc>
    <tagClass>org.apache.myfaces.taglib.core.AttributeTag</tagClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.ConvertDateTimeHandler</className>
    <parentClassName>javax.faces.view.facelets.ConverterHandler</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.ConvertDateTimeHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.ConverterHandler</sourceClassParentClassName>
    <name>f:convertDateTime</name>
    <bodyContent>empty</bodyContent>
    <desc>Register a DateTimeConverter instance on the UIComponent associated with the closest parent UIComponent custom
action</desc>
    <longDesc>
<![CDATA[
Register a DateTimeConverter instance on the UIComponent associated with the closest parent UIComponent custom
action. <p/> See <a target="_new"
href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/convertDateTime.html">tag documentation</a>.
]]>
    </longDesc>
    <converterClass>javax.faces.convert.DateTimeConverter</converterClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.ConvertDelegateHandler</className>
    <parentClassName>javax.faces.view.facelets.ConverterHandler</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.ConvertDelegateHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.ConverterHandler</sourceClassParentClassName>
    <name>f:converter</name>
    <bodyContent>empty</bodyContent>
    <desc>Register a named Converter instance on the UIComponent associated with the closest parent UIComponent custom action</desc>
    <longDesc>
<![CDATA[
Register a named Converter instance on the UIComponent associated with the closest parent UIComponent custom action.
<p/> See <a target="_new" href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/converter.html">tag
documentation</a>.
]]>
    </longDesc>
    <tagClass>org.apache.myfaces.taglib.core.ConverterImplTag</tagClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.ConvertNumberHandler</className>
    <parentClassName>javax.faces.view.facelets.ConverterHandler</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.ConvertNumberHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.ConverterHandler</sourceClassParentClassName>
    <name>f:convertNumber</name>
    <bodyContent>empty</bodyContent>
    <desc>Register a NumberConverter instance on the UIComponent associated with the closest parent UIComponent custom action</desc>
    <longDesc>
<![CDATA[
Register a NumberConverter instance on the UIComponent associated with the closest parent UIComponent custom action.
<p/> See <a target="_new"
href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/convertNumber.html">tag documentation</a>.
]]>
    </longDesc>
    <converterClass>javax.faces.convert.NumberConverter</converterClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.EventHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.EventHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:event</name>
    <bodyContent>empty</bodyContent>
    <desc>Registers a listener for a given system event class on the UIComponent associated with this tag</desc>
    <longDesc>Registers a listener for a given system event class on the UIComponent associated with this tag.</longDesc>
    <attribute>
      <name>listener</name>
      <className>javax.el.MethodExpression</className>
      <desc>no description</desc>
      <deferredMethodSignature>public void listener(javax.faces.event.ComponentSystemEvent evt) throws javax.faces.event.AbortProcessingException</deferredMethodSignature>
    </attribute>
    <attribute>
      <name>type</name>
      <className>javax.el.ValueExpression</className>
      <desc>no description</desc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.FacetHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.FacetHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:facet</name>
    <bodyContent>JSP</bodyContent>
    <desc>Register a named facet on the UIComponent associated with the closest parent UIComponent custom action</desc>
    <longDesc>
<![CDATA[
Register a named facet on the UIComponent associated with the closest parent UIComponent custom action. <p/> See <a
target="_new" href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/facet.html">tag documentation</a>.
]]>
    </longDesc>
    <tagClass>javax.faces.webapp.FacetTag</tagClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.LoadBundleHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.LoadBundleHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:loadBundle</name>
    <bodyContent>empty</bodyContent>
    <desc>Load a resource bundle localized for the Locale of the current view, and expose it (as a Map) in the request
attributes of the current request</desc>
    <longDesc>
<![CDATA[
Load a resource bundle localized for the Locale of the current view, and expose it (as a Map) in the request
attributes of the current request. <p/> See <a target="_new"
href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/loadBundle.html">tag documentation</a>.
]]>
    </longDesc>
    <tagClass>org.apache.myfaces.taglib.core.LoadBundleTag</tagClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.PhaseListenerHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.PhaseListenerHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:phaseListener</name>
    <bodyContent>empty</bodyContent>
    <desc>no description</desc>
    <tagClass>org.apache.myfaces.taglib.core.PhaseListenerTag</tagClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.SelectItemsHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.SelectItemsHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.ComponentHandler</sourceClassParentClassName>
    <name>f:selectItems</name>
    <bodyContent>empty</bodyContent>
    <desc>no description</desc>
    <componentClass>javax.faces.component.UISelectItems</componentClass>
    <attribute>
      <name>noSelectionValue</name>
      <className>javax.el.ValueExpression</className>
      <desc>Is either an EL expression pointing to the element in the value collection
whose value should be marked as a "no selection" item, or a literal string
that exactly matches the value of the item in the collection that must be 
marked as the "no selection" item</desc>
      <longDesc>Is either an EL expression pointing to the element in the value collection
whose value should be marked as a "no selection" item, or a literal string
that exactly matches the value of the item in the collection that must be 
marked as the "no selection" item. If the user selects such an item and 
the field is marked as required, then it will not pass validation.</longDesc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.SetPropertyActionListenerHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.SetPropertyActionListenerHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:setPropertyActionListener</name>
    <bodyContent>empty</bodyContent>
    <desc>no description</desc>
    <tagClass>org.apache.myfaces.taglib.core.SetPropertyActionListenerTag</tagClass>
    <attribute>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>TODO: Document me!</desc>
      <longDesc>TODO: Document me!</longDesc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.ValidateDelegateHandler</className>
    <parentClassName>javax.faces.view.facelets.ValidatorHandler</parentClassName>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.ValidateDelegateHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.ValidatorHandler</sourceClassParentClassName>
    <name>f:validator</name>
    <bodyContent>empty</bodyContent>
    <desc>Register a named Validator instance on the UIComponent associated with the closest parent UIComponent custom
action</desc>
    <longDesc>
<![CDATA[
Register a named Validator instance on the UIComponent associated with the closest parent UIComponent custom
action.<p/> See <a target="_new"
href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/validator.html">tag documentation</a>.
]]>
    </longDesc>
    <tagClass>org.apache.myfaces.taglib.core.ValidatorImplTag</tagClass>
    <attribute>
      <name>disabled</name>
      <desc>no description</desc>
      <longDesc>no description</longDesc>
      <deferredValueType>java.lang.Boolean</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.ValueChangeListenerHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.ValueChangeListenerHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:valueChangeListener</name>
    <bodyContent>empty</bodyContent>
    <desc>Register an ValueChangeListener instance on the UIComponent associated with the closest parent UIComponent custom
action</desc>
    <longDesc>
<![CDATA[
Register an ValueChangeListener instance on the UIComponent associated with the closest parent UIComponent custom
action.<p/> See <a target="_new"
href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/valueChangeListener.html">tag documentation</a>.
]]>
    </longDesc>
    <tagClass>org.apache.myfaces.taglib.core.ValueChangeListenerTag</tagClass>
    <attribute>
      <name>for</name>
      <className>java.lang.String</className>
      <desc>TODO: Document me!</desc>
      <longDesc>TODO: Document me!</longDesc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.VerbatimHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.VerbatimHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.ComponentHandler</sourceClassParentClassName>
    <name>f:verbatim</name>
    <bodyContent>empty</bodyContent>
    <desc>Handler for f:verbatim</desc>
    <longDesc>Handler for f:verbatim</longDesc>
    <tagClass>org.apache.myfaces.taglib.core.VerbatimTag</tagClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.ViewHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.ViewHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:view</name>
    <bodyContent>empty</bodyContent>
    <desc>Container for all JavaServer Faces core and custom component actions used on a page</desc>
    <longDesc>
<![CDATA[
Container for all JavaServer Faces core and custom component actions used on a page. <p/> See <a target="_new"
href="http://java.sun.com/j2ee/javaserverfaces/1.1_01/docs/tlddocs/f/view.html">tag documentation</a>.
]]>
    </longDesc>
    <componentClass>javax.faces.component.UIViewRoot</componentClass>
    <attribute>
      <name>locale</name>
      <desc>no description</desc>
    </attribute>
    <attribute>
      <name>renderKitId</name>
      <desc>no description</desc>
    </attribute>
    <attribute>
      <name>contentType</name>
      <desc>no description</desc>
    </attribute>
    <attribute>
      <name>encoding</name>
      <desc>no description</desc>
    </attribute>
    <attribute>
      <name>beforePhase</name>
      <desc>no description</desc>
    </attribute>
    <attribute>
      <name>afterPhase</name>
      <desc>no description</desc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.core.ViewMetadataHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.core.ViewMetadataHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>f:metadata</name>
    <bodyContent>JSP</bodyContent>
    <desc>Defines the view metadata</desc>
    <longDesc>Defines the view metadata. It is expected that this tag contains only
one or many f:viewParam tags.</longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.html.HtmlOutputScriptHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.html.HtmlOutputScriptHandler</sourceClassName>
    <sourceClassParentClassName>org.apache.myfaces.view.facelets.tag.jsf.html.HtmlComponentHandler</sourceClassParentClassName>
    <name>h:outputScript</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <componentClass>org.apache.myfaces.view.facelets.tag.jsf.html._HtmlOutputScript</componentClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jsf.html.HtmlOutputStylesheetHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jsf.html.HtmlOutputStylesheetHandler</sourceClassName>
    <sourceClassParentClassName>org.apache.myfaces.view.facelets.tag.jsf.html.HtmlComponentHandler</sourceClassParentClassName>
    <name>h:outputStylesheet</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <componentClass>org.apache.myfaces.view.facelets.tag.jsf.html._HtmlOutputStylesheet</componentClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jstl.core.CatchHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jstl.core.CatchHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>c:catch</name>
    <bodyContent>JSP</bodyContent>
    <desc>Catches any Throwable that occurs in its body and optionally 
exposes it</desc>
    <longDesc>Catches any Throwable that occurs in its body and optionally 
exposes it.</longDesc>
    <attribute>
      <name>var</name>
      <className>java.lang.String</className>
      <desc>Name of the exported scoped variable for the
exception thrown from a nested action</desc>
      <longDesc>Name of the exported scoped variable for the
exception thrown from a nested action. The type of the
scoped variable is the type of the exception thrown.</longDesc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jstl.core.ChooseHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jstl.core.ChooseHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>c:choose</name>
    <bodyContent>JSP</bodyContent>
    <desc>
<![CDATA[
Simple conditional tag that establishes a context for
mutually exclusive conditional operations, marked by
&lt;when&gt; and &lt;otherwise&gt;
]]>
    </desc>
    <longDesc>
<![CDATA[
Simple conditional tag that establishes a context for
mutually exclusive conditional operations, marked by
&lt;when&gt; and &lt;otherwise&gt;
]]>
    </longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jstl.core.ChooseOtherwiseHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jstl.core.ChooseOtherwiseHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>c:otherwise</name>
    <bodyContent>JSP</bodyContent>
    <desc>
<![CDATA[
Subtag of &lt;choose&gt; that follows &lt;when&gt; tags
and runs only if all of the prior conditions evaluated to
'false'
]]>
    </desc>
    <longDesc>
<![CDATA[
Subtag of &lt;choose&gt; that follows &lt;when&gt; tags
and runs only if all of the prior conditions evaluated to
'false'
]]>
    </longDesc>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jstl.core.ChooseWhenHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jstl.core.ChooseWhenHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>c:when</name>
    <bodyContent>JSP</bodyContent>
    <desc>
<![CDATA[
Subtag of &lt;choose&gt; that includes its body if its
condition evalutes to 'true'
]]>
    </desc>
    <longDesc>
<![CDATA[
Subtag of &lt;choose&gt; that includes its body if its
condition evalutes to 'true'
]]>
    </longDesc>
    <attribute>
      <name>test</name>
      <className>boolean</className>
      <required>true</required>
      <desc>The test condition that determines whether or not the
body content should be processed</desc>
      <longDesc>The test condition that determines whether or not the
body content should be processed.</longDesc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jstl.core.ForEachHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jstl.core.ForEachHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>c:forEach</name>
    <bodyContent>JSP</bodyContent>
    <desc>The basic iteration tag, accepting many different
collection types and supporting subsetting and other
functionality</desc>
    <longDesc>The basic iteration tag, accepting many different
collection types and supporting subsetting and other
functionality</longDesc>
    <attribute>
      <name>begin</name>
      <className>int</className>
      <desc>If items specified:
Iteration begins at the item located at the
specified index</desc>
      <longDesc>If items specified:
Iteration begins at the item located at the
specified index. First item of the collection has
index 0.
If items not specified:
Iteration begins with index set at the value
specified.</longDesc>
    </attribute>
    <attribute>
      <name>end</name>
      <className>int</className>
      <desc>If items specified:
Iteration ends at the item located at the
specified index (inclusive)</desc>
      <longDesc>If items specified:
Iteration ends at the item located at the
specified index (inclusive).
If items not specified:
Iteration ends when index reaches the value
specified.</longDesc>
    </attribute>
    <attribute>
      <name>items</name>
      <className>javax.el.ValueExpression</className>
      <desc>Collection of items to iterate over</desc>
      <longDesc>Collection of items to iterate over.</longDesc>
    </attribute>
    <attribute>
      <name>step</name>
      <className>int</className>
      <desc>Iteration will only process every step items of
the collection, starting with the first one</desc>
      <longDesc>Iteration will only process every step items of
the collection, starting with the first one.</longDesc>
    </attribute>
    <attribute>
      <name>var</name>
      <className>java.lang.String</className>
      <desc>Name of the exported scoped variable for the
current item of the iteration</desc>
      <longDesc>Name of the exported scoped variable for the
current item of the iteration. This scoped
variable has nested visibility. Its type depends
on the object of the underlying collection.</longDesc>
    </attribute>
    <attribute>
      <name>varStatus</name>
      <className>java.lang.String</className>
      <desc>Name of the exported scoped variable for the
status of the iteration</desc>
      <longDesc>Name of the exported scoped variable for the
status of the iteration.</longDesc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jstl.core.IfHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jstl.core.IfHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>c:if</name>
    <bodyContent>JSP</bodyContent>
    <desc>Simple conditional tag, which evalutes its body if the
supplied condition is true and optionally exposes a Boolean
scripting variable representing the evaluation of this condition</desc>
    <longDesc>Simple conditional tag, which evalutes its body if the
supplied condition is true and optionally exposes a Boolean
scripting variable representing the evaluation of this condition</longDesc>
    <attribute>
      <name>test</name>
      <className>boolean</className>
      <required>true</required>
      <desc>The test condition that determines whether or
not the body content should be processed</desc>
      <longDesc>The test condition that determines whether or
not the body content should be processed.</longDesc>
    </attribute>
    <attribute>
      <name>var</name>
      <className>java.lang.String</className>
      <desc>Name of the exported scoped variable for the
resulting value of the test condition</desc>
      <longDesc>Name of the exported scoped variable for the
resulting value of the test condition. The type
of the scoped variable is Boolean.</longDesc>
    </attribute>
    <attribute>
      <name>scope</name>
      <className>java.lang.String</className>
      <desc>Scope for var.</desc>
      <longDesc>Scope for var.</longDesc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.jstl.core.SetHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.jstl.core.SetHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>c:set</name>
    <bodyContent>JSP</bodyContent>
    <desc>Simplified implementation of c:set

Sets the result of an expression evaluation in a 'scope'</desc>
    <longDesc>Simplified implementation of c:set

Sets the result of an expression evaluation in a 'scope'</longDesc>
    <attribute>
      <name>var</name>
      <className>java.lang.String</className>
      <desc>Name of the exported scoped variable to hold the value
specified in the action</desc>
      <longDesc>Name of the exported scoped variable to hold the value
specified in the action. The type of the scoped variable is
whatever type the value expression evaluates to.</longDesc>
    </attribute>
    <attribute>
      <name>value</name>
      <className>javax.el.ValueExpression</className>
      <desc>Expression to be evaluated</desc>
      <longDesc>Expression to be evaluated.</longDesc>
      <deferredValueType>java.lang.Object</deferredValueType>
    </attribute>
    <attribute>
      <name>scope</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
    </attribute>
    <attribute>
      <name>target</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
    </attribute>
    <attribute>
      <name>property</name>
      <className>java.lang.String</className>
      <desc>no description</desc>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.ComponentRefHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.ComponentRefHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.ComponentHandler</sourceClassParentClassName>
    <name>ui:component</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <componentClass>org.apache.myfaces.view.facelets.tag.ui._Component</componentClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.ComponentRefHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.ComponentRefHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.ComponentHandler</sourceClassParentClassName>
    <name>ui:fragment</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <componentClass>org.apache.myfaces.view.facelets.tag.ui._Fragment</componentClass>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.CompositionHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.CompositionHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>ui:composition</name>
    <bodyContent>JSP</bodyContent>
    <desc>TODO: REFACTOR - This class could easily use a common parent with DecoratorHandler</desc>
    <longDesc>TODO: REFACTOR - This class could easily use a common parent with DecoratorHandler</longDesc>
    <attribute>
      <name>template</name>
      <className>javax.el.ValueExpression</className>
      <desc>The resolvable URI of the template to use</desc>
      <longDesc>The resolvable URI of the template to use. The content within the composition tag will 
be used in populating the template specified.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.DecorateHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.DecorateHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>ui:decorate</name>
    <bodyContent>JSP</bodyContent>
    <desc>The decorate tag acts the same as a composition tag, but it will not trim 
everything outside of it</desc>
    <longDesc>The decorate tag acts the same as a composition tag, but it will not trim 
everything outside of it. This is useful in cases where you have a list of 
items in a document, which you would like to be decorated or framed.
 
The sum of it all is that you can take any element in the document and decorate 
it with some external logic as provided by the template.

TODO: REFACTOR - This class could easily use a common parent with CompositionHandler</longDesc>
    <attribute>
      <name>template</name>
      <className>javax.el.ValueExpression</className>
      <desc>The resolvable URI of the template to use</desc>
      <longDesc>The resolvable URI of the template to use. The content within the decorate tag 
will be used in populating the template specified.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.DefineHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.DefineHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>ui:define</name>
    <bodyContent>JSP</bodyContent>
    <desc>The define tag can be used within tags that allow templating</desc>
    <longDesc>The define tag can be used within tags that allow templating. 
This includes composition and decorate tags.</longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>The literal name for this definition</desc>
      <longDesc>
<![CDATA[
The literal name for this definition. This name will match up with 
a &lt;ui:insert/&gt; tag in a target template.
]]>
      </longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.IncludeHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.IncludeHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>ui:include</name>
    <bodyContent>JSP</bodyContent>
    <desc>The include tag can point at any Facelet which might use the composition tag,
component tag, or simply be straight XHTML/XML</desc>
    <longDesc>
<![CDATA[
The include tag can point at any Facelet which might use the composition tag,
component tag, or simply be straight XHTML/XML. It should be noted that the 
src path does allow relative path names, but they will always be resolved 
against the original Facelet requested. 

The include tag can be used in conjunction with multiple &lt;ui:param/&gt; 
tags to pass EL expressions/values to the target page.
]]>
    </longDesc>
    <attribute>
      <name>src</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>A literal or EL expression that specifies the target Facelet that you 
would like to include into your document</desc>
      <longDesc>A literal or EL expression that specifies the target Facelet that you 
would like to include into your document.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.InsertHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.InsertHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>ui:insert</name>
    <bodyContent>JSP</bodyContent>
    <desc>The insert tag is used within your templates to declare spots of replicable data</desc>
    <longDesc>The insert tag is used within your templates to declare spots of replicable data.</longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>
<![CDATA[
The optional name attribute matches the associated &lt;ui:define/&gt; 
tag in this template's client
]]>
      </desc>
      <longDesc>
<![CDATA[
The optional name attribute matches the associated &lt;ui:define/&gt; 
tag in this template's client. If no name is specified, it's expected 
that the whole template client will be inserted.
]]>
      </longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
  </faceletTag>
  <faceletTag>
    <modelId>myfaces-impl</modelId>
    <className>org.apache.myfaces.view.facelets.tag.ui.ParamHandler</className>
    <sourceClassName>org.apache.myfaces.view.facelets.tag.ui.ParamHandler</sourceClassName>
    <sourceClassParentClassName>javax.faces.view.facelets.TagHandler</sourceClassParentClassName>
    <name>ui:param</name>
    <bodyContent>JSP</bodyContent>
    <desc>no description</desc>
    <longDesc></longDesc>
    <attribute>
      <name>name</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>The name of the variable to pass to the included Facelet</desc>
      <longDesc>The name of the variable to pass to the included Facelet.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
    <attribute>
      <name>value</name>
      <className>javax.el.ValueExpression</className>
      <required>true</required>
      <desc>The literal or EL expression value to assign to the named variable</desc>
      <longDesc>The literal or EL expression value to assign to the named variable.</longDesc>
      <deferredValueType>java.lang.String</deferredValueType>
    </attribute>
  </faceletTag>
  <webConfig>
    <modelId>myfaces-api</modelId>
    <webConfigParam>
      <name>javax.faces.RESOURCE_EXCLUDES</name>
      <fieldName>RESOURCE_EXCLUDES_PARAM_NAME</fieldName>
      <desc>Space separated file extensions that will not be served by the default ResourceHandler implementation</desc>
      <longDesc>Space separated file extensions that will not be served by the default ResourceHandler implementation.</longDesc>
      <defaultValue>.class .jsp .jspx .properties .xhtml</defaultValue>
      <sourceClassName>javax.faces.application.ResourceHandler</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.STATE_SAVING_METHOD</name>
      <fieldName>STATE_SAVING_METHOD_PARAM_NAME</fieldName>
      <desc>Define the state method to be used. There are two different options defined by the specification: 'client' and 'server' state.</desc>
      <longDesc>
<![CDATA[
Define the state method to be used. There are two different options defined by the 
specification: "client" and "server" state.
<p>
When "client" state is configured, all state information required to create the tree is embedded within
the data rendered to the client. Note that because data received from a remote client must always be
treated as "tainted", care must be taken when using such data. Some StateManager implementations may
use encryption to ensure that clients cannot modify the data, and that the data received on postback
is therefore trustworthy.
</p>
<p>
When "server" state is configured, the data is saved somewhere "on the back end", and (at most) a
token is embedded in the data rendered to the user.
</p>
]]>
      </longDesc>
      <defaultValue>server</defaultValue>
      <expectedValues>server,client</expectedValues>
      <sourceClassName>javax.faces.application.StateManager</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.FULL_STATE_SAVING_VIEW_IDS</name>
      <fieldName>FULL_STATE_SAVING_VIEW_IDS_PARAM_NAME</fieldName>
      <desc>Indicate the viewId(s) separated by commas that should be saved and restored fully, without use Partial State Saving (PSS)</desc>
      <longDesc>Indicate the viewId(s) separated by commas that should be saved and restored fully, without use Partial State Saving (PSS).</longDesc>
      <sourceClassName>javax.faces.application.StateManager</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.PARTIAL_STATE_SAVING</name>
      <fieldName>PARTIAL_STATE_SAVING_PARAM_NAME</fieldName>
      <desc>Enable or disable partial state saving algorithm</desc>
      <longDesc>
<![CDATA[
Enable or disable partial state saving algorithm.
 
<p>Partial State Saving algorithm allows to reduce the size of the state required to save a view, 
keeping track of the "delta" or differences between the view build by first time and the current 
state of the view.</p>
<p>If the webapp faces-config file version is 2.0 or upper the default value is true, otherwise is false.</p>
]]>
      </longDesc>
      <defaultValue>true (false with 1.2 webapps)</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>javax.faces.application.StateManager</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.DEFAULT_SUFFIX</name>
      <fieldName>DEFAULT_SUFFIX_PARAM_NAME</fieldName>
      <desc>Indicate the default suffixes, separated by spaces to derive the default file URI 
used by JSF to create views and render pages</desc>
      <longDesc>Indicate the default suffixes, separated by spaces to derive the default file URI 
used by JSF to create views and render pages.</longDesc>
      <defaultValue>.xhtml .jsp</defaultValue>
      <sourceClassName>javax.faces.application.ViewHandler</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.FACELETS_SUFFIX</name>
      <fieldName>FACELETS_SUFFIX_PARAM_NAME</fieldName>
      <desc>The default extension used to handle facelets pages</desc>
      <longDesc>The default extension used to handle facelets pages.</longDesc>
      <defaultValue>.xhtml</defaultValue>
      <sourceClassName>javax.faces.application.ViewHandler</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.FACELETS_VIEW_MAPPINGS</name>
      <fieldName>FACELETS_VIEW_MAPPINGS_PARAM_NAME</fieldName>
      <desc>Set of extensions handled by facelets, separated by ';'</desc>
      <longDesc>Set of extensions handled by facelets, separated by ';'.</longDesc>
      <sourceClassName>javax.faces.application.ViewHandler</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.VALIDATE_EMPTY_FIELDS</name>
      <fieldName>VALIDATE_EMPTY_FIELDS_PARAM_NAME</fieldName>
      <desc>Force validation on empty fields (By default is auto, which means it is only 
enabled when Bean Validation binaries are available on the current classpath)</desc>
      <longDesc>Force validation on empty fields (By default is auto, which means it is only 
enabled when Bean Validation binaries are available on the current classpath).</longDesc>
      <defaultValue>auto</defaultValue>
      <expectedValues>auto, true, false</expectedValues>
      <sourceClassName>javax.faces.component.UIInput</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</name>
      <fieldName>EMPTY_VALUES_AS_NULL_PARAM_NAME</fieldName>
      <desc>Submitted values are decoded as null values instead empty strings</desc>
      <longDesc>
<![CDATA[
Submitted values are decoded as null values instead empty strings.

<p>Note this param is ignored for components extending from UISelectOne/UISelectMany.</p>
]]>
      </longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true, false</expectedValues>
      <sourceClassName>javax.faces.component.UIInput</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.ENUM_CONVERTER_ALLOW_STRING_PASSTROUGH</name>
      <fieldName>ALLOW_STRING_PASSTROUGH</fieldName>
      <desc>If value is a String instance and this param is true, pass it directly without try any change</desc>
      <longDesc>If value is a String instance and this param is true, pass it directly without try any change.

See MYFACES-2739 for details.</longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>javax.faces.convert.EnumConverter</sourceClassName>
      <since>2.0.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR</name>
      <fieldName>DISABLE_DEFAULT_BEAN_VALIDATOR_PARAM_NAME</fieldName>
      <desc>If this init parameter is present, no Bean Validators should be added to an UIInput by default</desc>
      <longDesc>If this init parameter is present, no Bean Validators should be added to an UIInput by default.
Explicitly adding a BeanValidator to an UIInput is possible though.</longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true, false</expectedValues>
      <sourceClassName>javax.faces.validator.BeanValidator</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.CONFIG_FILES</name>
      <fieldName>CONFIG_FILES_ATTR</fieldName>
      <desc>Comma separated list of URIs of (additional) faces config files</desc>
      <longDesc>Comma separated list of URIs of (additional) faces config files.
(e.g. /WEB-INF/my-config.xml)See JSF 1.0 PRD2, 10.3.2
Attention: You do not need to put /WEB-INF/faces-config.xml in here.</longDesc>
      <sourceClassName>javax.faces.webapp.FacesServlet</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.LIFECYCLE_ID</name>
      <fieldName>LIFECYCLE_ID_ATTR</fieldName>
      <desc>Identify the Lifecycle instance to be used</desc>
      <longDesc>Identify the Lifecycle instance to be used.</longDesc>
      <sourceClassName>javax.faces.webapp.FacesServlet</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.ERROR_HANDLER</name>
      <fieldName>ERROR_HANDLER_PARAMETER</fieldName>
      <desc>Deprecated: use JSF 2.0 ExceptionHandler</desc>
      <longDesc>
<![CDATA[
Since JSF 2.0 there is a standard way to deal with unexpected Exceptions: the ExceptionHandler.
Due to backwards compatibility MyFaces 2.0 also supports the init parameter 
org.apache.myfaces.ERROR_HANDLER, introduced in MyFaces 1.2.4. However, the given error handler
now only needs to include the following method:
<ul>
<li>handleException(FacesContext fc, Exception ex)</li>
</ul>
Furthermore, the init parameter only works when using the PreJsf2ExceptionHandlerFactory.
]]>
      </longDesc>
      <sourceClassName>javax.faces.webapp.PreJsf2ExceptionHandlerFactory$PreJsf2ExceptionHandlerImpl</sourceClassName>
      <since>1.2.4</since>
    </webConfigParam>
  </webConfig>
  <webConfig>
    <modelId>myfaces-impl-shared</modelId>
    <webConfigParam>
      <name>org.apache.myfaces.CHECKED_VIEWID_CACHE_SIZE</name>
      <fieldName>CHECKED_VIEWID_CACHE_SIZE_ATTRIBUTE</fieldName>
      <desc>Controls the size of the cache used to "remember" if a view exists or not</desc>
      <longDesc>Controls the size of the cache used to "remember" if a view exists or not.</longDesc>
      <defaultValue>500</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.application.DefaultViewHandlerSupport</sourceClassName>
      <since>2.0.2</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.CHECKED_VIEWID_CACHE_ENABLED</name>
      <fieldName>CHECKED_VIEWID_CACHE_ENABLED_ATTRIBUTE</fieldName>
      <desc>Enable or disable a cache used to "remember" if a view exists or not and reduce the impact of
sucesive calls to ExternalContext</desc>
      <longDesc>Enable or disable a cache used to "remember" if a view exists or not and reduce the impact of
sucesive calls to ExternalContext.getResource().</longDesc>
      <defaultValue>true</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.application.DefaultViewHandlerSupport</sourceClassName>
      <since>2.0.2</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.PRETTY_HTML</name>
      <fieldName>INIT_PARAM_PRETTY_HTML</fieldName>
      <desc>If true, rendered HTML code will be formatted, so that it is "human readable"</desc>
      <longDesc>If true, rendered HTML code will be formatted, so that it is "human readable".
i.e. additional line separators and whitespace will be written, that do not
influence the HTML code. Default: "true"</longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.ALLOW_JAVASCRIPT</name>
      <fieldName>INIT_PARAM_ALLOW_JAVASCRIPT</fieldName>
      <desc>This parameter tells MyFaces if javascript code should be allowed in the rendered HTML output</desc>
      <longDesc>This parameter tells MyFaces if javascript code should be allowed in the rendered HTML output.
If javascript is allowed, command_link anchors will have javascript code 
that submits the corresponding form.
If javascript is not allowed, the state saving info and nested parameters ill be 
added as url parameters.
Default: "true"</longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.DETECT_JAVASCRIPT</name>
      <fieldName>INIT_PARAM_DETECT_JAVASCRIPT</fieldName>
      <desc>no description</desc>
      <longDesc></longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.AUTO_SCROLL</name>
      <fieldName>INIT_PARAM_AUTO_SCROLL</fieldName>
      <desc>If true, a javascript function will be rendered that is able to restore the 
former vertical scroll on every request</desc>
      <longDesc>If true, a javascript function will be rendered that is able to restore the 
former vertical scroll on every request. Convenient feature if you have pages
with long lists and you do not want the browser page to always jump to the top
if you trigger a link or button action that stays on the same page.
Default: "false"</longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.ADD_RESOURCE_CLASS</name>
      <fieldName>INIT_PARAM_ADD_RESOURCE_CLASS</fieldName>
      <desc>Tomahawk specific: A class implementing the
org</desc>
      <longDesc>Tomahawk specific: A class implementing the
org.apache.myfaces.shared.renderkit.html.util.AddResource
interface. It is responsible to
place scripts and css on the right position in your HTML document.
Default: "org.apache.myfaces.shared.renderkit.html.util.DefaultAddResource"
Follow the description on the MyFaces-Wiki-Performance page to enable
StreamingAddResource instead of DefaultAddResource if you want to
gain performance.</longDesc>
      <defaultValue>org.apache.myfaces. renderkit.html.util. DefaultAddResource</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.CHECK_EXTENSIONS_FILTER</name>
      <fieldName>INIT_CHECK_EXTENSIONS_FILTER</fieldName>
      <desc>Tomahawk specific: A very common problem in configuring MyFaces-web-applications
is that the Extensions-Filter is not configured at all
or improperly configured</desc>
      <longDesc>Tomahawk specific: A very common problem in configuring MyFaces-web-applications
is that the Extensions-Filter is not configured at all
or improperly configured. This parameter will check for a properly
configured Extensions-Filter if it is needed by the web-app.
In most cases this check will work just fine, there might be cases
where an internal forward will bypass the Extensions-Filter and the check
will not work. If this is the case, you can disable the check by setting
this parameter to false.

In tomahawk for JSF 2.0 since version 1.1.11, this param is set by default to false, otherwise is true.</longDesc>
      <defaultValue>for JSF 2.0 since 1.1.11 false, otherwise true</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.READONLY_AS_DISABLED_FOR_SELECTS</name>
      <fieldName>INIT_READONLY_AS_DISABLED_FOR_SELECT</fieldName>
      <desc>no description</desc>
      <longDesc></longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.CONFIG_REFRESH_PERIOD</name>
      <fieldName>INIT_PARAM_CONFIG_REFRESH_PERIOD</fieldName>
      <desc>no description</desc>
      <longDesc></longDesc>
      <defaultValue>2</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.VIEWSTATE_JAVASCRIPT</name>
      <fieldName>INIT_PARAM_VIEWSTATE_JAVASCRIPT</fieldName>
      <desc>no description</desc>
      <longDesc></longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.RENDER_VIEWSTATE_ID</name>
      <fieldName>INIT_PARAM_RENDER_VIEWSTATE_ID</fieldName>
      <desc>no description</desc>
      <longDesc></longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.STRICT_XHTML_LINKS</name>
      <fieldName>INIT_PARAM_STRICT_XHTML_LINKS</fieldName>
      <desc>no description</desc>
      <longDesc></longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.RENDER_CLEAR_JAVASCRIPT_FOR_BUTTON</name>
      <fieldName>INIT_PARAM_RENDER_CLEAR_JAVASCRIPT_FOR_BUTTON</fieldName>
      <desc>This param renders the clear javascript on button necessary only for
compatibility with hidden fields feature of myfaces</desc>
      <longDesc>This param renders the clear javascript on button necessary only for
compatibility with hidden fields feature of myfaces. This is done 
because jsf ri does not render javascript on onclick method for button,
so myfaces should do this.</longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.2.3</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.RENDER_HIDDEN_FIELDS_FOR_LINK_PARAMS</name>
      <fieldName>INIT_PARAM_RENDER_HIDDEN_FIELDS_FOR_LINK_PARAMS</fieldName>
      <desc>This param renders hidden fields at the end of h:form for link params when h:commandLink + f:param is used, instead
use javascript to create them</desc>
      <longDesc>This param renders hidden fields at the end of h:form for link params when h:commandLink + f:param is used, instead
use javascript to create them. Set this param to true also enables org.apache.myfaces.RENDER_CLEAR_JAVASCRIPT_FOR_BUTTON 
automatically to ensure consistency. This feature is required to support Windows Mobile 6, because in this environment,
document.createElement() and form.appendChild() javascript methods are not supported.</longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.2.9</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.SAVE_FORM_SUBMIT_LINK_IE</name>
      <fieldName>INIT_PARAM_SAVE_FORM_SUBMIT_LINK_IE</fieldName>
      <desc>Add a code that save the form before submit using a
link (call to window</desc>
      <longDesc>Add a code that save the form before submit using a
link (call to window.external.AutoCompleteSaveForm(form) ). It's a bug on IE.</longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.DELEGATE_FACES_SERVLET</name>
      <fieldName>INIT_PARAM_DELEGATE_FACES_SERVLET</fieldName>
      <desc>no description</desc>
      <longDesc></longDesc>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>1.2.7</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.REFRESH_TRANSIENT_BUILD_ON_PSS</name>
      <fieldName>INIT_PARAM_REFRESH_TRANSIENT_BUILD_ON_PSS</fieldName>
      <desc>Indicate if the facelet associated to the view should be reapplied when the view is refreshed</desc>
      <longDesc>
<![CDATA[
Indicate if the facelet associated to the view should be reapplied when the view is refreshed. Default mode is "auto".

<p>This param is only valid when partial state saving is on.
If this is set as true, the tag-handlers are always reapplied before render view, like in facelets 1.1.x, allowing
c:if work correctly to "toggle" components based on a value changed on invoke application phase. 
If the param is set as "auto", the implementation check if c:if, c:forEach, 
c:choose and ui:include with src=ELExpression is used on the page and if that so, mark the view
to be refreshed.</p>
]]>
      </longDesc>
      <defaultValue>auto</defaultValue>
      <expectedValues>true,false,auto</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.REFRESH_TRANSIENT_BUILD_ON_PSS_PRESERVE_STATE</name>
      <fieldName>INIT_PARAM_REFRESH_TRANSIENT_BUILD_ON_PSS_PRESERVE_STATE</fieldName>
      <desc>Enable or disable a special mode that enable full state for parent components containing c:if, c:forEach, 
c:choose and ui:include with src=ELExpression</desc>
      <longDesc>
<![CDATA[
Enable or disable a special mode that enable full state for parent components containing c:if, c:forEach, 
c:choose and ui:include with src=ELExpression. By default is disabled(false).

<p>This param is only valid when partial state saving is on.
If this is set as true, parent components containing  c:if, c:forEach, 
c:choose and ui:include with src=ELExpression are marked to be restored fully, so state
is preserved between request.</p>
]]>
      </longDesc>
      <defaultValue>false</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.VALIDATE_XML</name>
      <fieldName>INIT_PARAM_VALIDATE_XML</fieldName>
      <desc>
<![CDATA[
If set to <code>true</code>, tag library XML files and faces config XML files using schema 
will be validated during application start up
]]>
      </desc>
      <longDesc>
<![CDATA[
If set to <code>true</code>, tag library XML files and faces config XML files using schema 
will be validated during application start up
]]>
      </longDesc>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.WRAP_SCRIPT_CONTENT_WITH_XML_COMMENT_TAG</name>
      <fieldName>INIT_PARAM_WRAP_SCRIPT_CONTENT_WITH_XML_COMMENT_TAG</fieldName>
      <desc>Wrap content inside script with xml comment to prevent old browsers to display it</desc>
      <longDesc>Wrap content inside script with xml comment to prevent old browsers to display it. By default it is true.</longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>2.0.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.RENDER_FORM_SUBMIT_SCRIPT_INLINE</name>
      <fieldName>INIT_PARAM_RENDER_FORM_SUBMIT_SCRIPT_INLINE</fieldName>
      <desc>If set true, render the form submit script inline, as in myfaces core 1</desc>
      <longDesc>If set true, render the form submit script inline, as in myfaces core 1.2 and earlier versions</longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>2.0.2</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.DEBUG_PHASE_LISTENER</name>
      <fieldName>INIT_PARAM_DEBUG_PHASE_LISTENER</fieldName>
      <desc>Enable/disable DebugPhaseListener feature, with provide useful information about ValueHolder variables (submittedValue, localValue, value)</desc>
      <longDesc>Enable/disable DebugPhaseListener feature, with provide useful information about ValueHolder variables (submittedValue, localValue, value).
Note evaluate those getters for each component could cause some unwanted side effects when using "access" type scopes like on MyFaces CODI.
This param only has effect when project stage is Development.</longDesc>
      <sourceClassName>org.apache.myfaces.shared.config.MyfacesConfig</sourceClassName>
      <since>2.0.8</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.FLASH_SCOPE_DISABLED</name>
      <fieldName>FLASH_SCOPE_DISABLED_PARAM</fieldName>
      <desc>Defines whether flash scope is disabled</desc>
      <longDesc>Defines whether flash scope is disabled.</longDesc>
      <defaultValue>false</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.context.flash.FlashImpl</sourceClassName>
      <since>2.0.5</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.RESOURCE_MAX_TIME_EXPIRES</name>
      <fieldName>RESOURCE_MAX_TIME_EXPIRES</fieldName>
      <desc>Set the max time in miliseconds set on the "Expires" header for a resource</desc>
      <longDesc>Set the max time in miliseconds set on the "Expires" header for a resource.
(default to one week in miliseconds or 604800000)</longDesc>
      <defaultValue>604800000</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.resource.BaseResourceHandlerSupport</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.RESOURCE_HANDLER_CACHE_SIZE</name>
      <fieldName>RESOURCE_HANDLER_CACHE_SIZE_ATTRIBUTE</fieldName>
      <desc>no description</desc>
      <defaultValue>500</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.resource.ResourceHandlerCache</sourceClassName>
      <since>2.0.2</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.RESOURCE_HANDLER_CACHE_ENABLED</name>
      <fieldName>RESOURCE_HANDLER_CACHE_ENABLED_ATTRIBUTE</fieldName>
      <desc>no description</desc>
      <defaultValue>true</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.resource.ResourceHandlerCache</sourceClassName>
      <since>2.0.2</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.USE_ENCRYPTION</name>
      <fieldName>USE_ENCRYPTION</fieldName>
      <desc>Indicate if the view state is encrypted or not</desc>
      <longDesc>Indicate if the view state is encrypted or not. By default, encryption is enabled.</longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.SECRET</name>
      <fieldName>INIT_SECRET</fieldName>
      <desc>Defines the secret (Base64 encoded) used to initialize the secret key
for encryption algorithm</desc>
      <longDesc>Defines the secret (Base64 encoded) used to initialize the secret key
for encryption algorithm. See MyFaces wiki/web site documentation 
for instructions on how to configure an application for 
different encryption strengths.</longDesc>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.ALGORITHM</name>
      <fieldName>INIT_ALGORITHM</fieldName>
      <desc>Indicate the encryption algorithm used for encrypt the view state</desc>
      <longDesc>Indicate the encryption algorithm used for encrypt the view state.</longDesc>
      <defaultValue>DES</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.SECRET.CACHE</name>
      <fieldName>INIT_SECRET_KEY_CACHE</fieldName>
      <desc>If is set to "false", the secret key used for encryption algorithm is not cached</desc>
      <longDesc>If is set to "false", the secret key used for encryption algorithm is not cached. This is used
when the returned SecretKey for encryption algorithm is not thread safe.</longDesc>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.ALGORITHM.IV</name>
      <fieldName>INIT_ALGORITHM_IV</fieldName>
      <desc>Defines the initialization vector (Base64 encoded) used for the encryption algorithm</desc>
      <longDesc>Defines the initialization vector (Base64 encoded) used for the encryption algorithm</longDesc>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.ALGORITHM.PARAMETERS</name>
      <fieldName>INIT_ALGORITHM_PARAM</fieldName>
      <desc>Defines the default mode and padding used for the encryption algorithm</desc>
      <longDesc>Defines the default mode and padding used for the encryption algorithm</longDesc>
      <defaultValue>ECB/PKCS5Padding</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.SERIAL_FACTORY</name>
      <fieldName>SERIAL_FACTORY</fieldName>
      <desc>Defines the factory class name using for serialize/deserialize the view state returned 
by state manager into a byte array</desc>
      <longDesc>Defines the factory class name using for serialize/deserialize the view state returned 
by state manager into a byte array. The expected class must implement
org.apache.myfaces.shared.util.serial.SerialFactory interface.</longDesc>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.COMPRESS_STATE_IN_CLIENT</name>
      <fieldName>COMPRESS_STATE_IN_CLIENT</fieldName>
      <desc>Indicate if the view state should be compressed before encrypted(optional) and encoded</desc>
      <longDesc>Indicate if the view state should be compressed before encrypted(optional) and encoded</longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.MAC_ALGORITHM</name>
      <fieldName>INIT_MAC_ALGORITHM</fieldName>
      <desc>Indicate the algorithm used to calculate the Message Authentication Code that is
added to the view state</desc>
      <longDesc>Indicate the algorithm used to calculate the Message Authentication Code that is
added to the view state.</longDesc>
      <defaultValue>HmacSHA1</defaultValue>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.MAC_SECRET</name>
      <fieldName>INIT_MAC_SECRET</fieldName>
      <desc>Define the initialization code that are used to initialize the secret key used
on the Message Authentication Code algorithm</desc>
      <longDesc>Define the initialization code that are used to initialize the secret key used
on the Message Authentication Code algorithm</longDesc>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.MAC_SECRET.CACHE</name>
      <fieldName>INIT_MAC_SECRET_KEY_CACHE</fieldName>
      <desc>If is set to "false", the secret key used for MAC algorithm is not cached</desc>
      <longDesc>If is set to "false", the secret key used for MAC algorithm is not cached. This is used
when the returned SecretKey for mac algorithm is not thread safe.</longDesc>
      <sourceClassName>org.apache.myfaces.shared.util.StateUtils</sourceClassName>
    </webConfigParam>
  </webConfig>
  <webConfig>
    <modelId>myfaces-impl</modelId>
    <webConfigParam>
      <name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</name>
      <fieldName>DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAME</fieldName>
      <desc>no description</desc>
      <defaultValue>false</defaultValue>
      <expectedValues>true, false</expectedValues>
      <sourceClassName>org.apache.myfaces.application.ApplicationImpl</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.PROJECT_STAGE</name>
      <fieldName>PROJECT_STAGE_PARAM_NAME</fieldName>
      <desc>no description</desc>
      <defaultValue>Production</defaultValue>
      <expectedValues>Development, Production, SystemTest, UnitTest</expectedValues>
      <sourceClassName>org.apache.myfaces.application.ApplicationImpl</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.LAZY_LOAD_CONFIG_OBJECTS</name>
      <fieldName>LAZY_LOAD_CONFIG_OBJECTS_PARAM_NAME</fieldName>
      <desc>no description</desc>
      <defaultValue>true</defaultValue>
      <sourceClassName>org.apache.myfaces.application.ApplicationImpl</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.VALIDATE</name>
      <fieldName>VALIDATE_CONTEXT_PARAM</fieldName>
      <desc>no description</desc>
      <defaultValue>false</defaultValue>
      <expectedValues>true, false</expectedValues>
      <sourceClassName>org.apache.myfaces.config.FacesConfigValidator</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.annotation.SCAN_PACKAGES</name>
      <fieldName>SCAN_PACKAGES</fieldName>
      <desc>Servlet context init parameter which defines which packages to scan
for beans, separated by commas</desc>
      <longDesc>Servlet context init parameter which defines which packages to scan
for beans, separated by commas.</longDesc>
      <sourceClassName>org.apache.myfaces.config.annotation.DefaultAnnotationProvider</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.config.annotation.LifecycleProvider</name>
      <fieldName>LIFECYCLE_PROVIDER</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.config.annotation.DefaultLifecycleProviderFactory</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.EL_RESOLVER_COMPARATOR</name>
      <fieldName>EL_RESOLVER_COMPARATOR</fieldName>
      <desc><![CDATA[The Class of an Comparator&lt;ELResolver&gt; implementation.]]></desc>
      <sourceClassName>org.apache.myfaces.el.unified.ResolverBuilderBase</sourceClassName>
      <since>1.2.10, 2.0.2</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.CHECKED_VIEWID_CACHE_SIZE</name>
      <fieldName>CHECKED_VIEWID_CACHE_SIZE_ATTRIBUTE</fieldName>
      <desc>no description</desc>
      <defaultValue>500</defaultValue>
      <sourceClassName>org.apache.myfaces.lifecycle.DefaultRestoreViewSupport</sourceClassName>
      <since>2.0.2</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.CHECKED_VIEWID_CACHE_ENABLED</name>
      <fieldName>CHECKED_VIEWID_CACHE_ENABLED_ATTRIBUTE</fieldName>
      <desc>no description</desc>
      <defaultValue>true</defaultValue>
      <sourceClassName>org.apache.myfaces.lifecycle.DefaultRestoreViewSupport</sourceClassName>
      <since>2.0.2</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.ERROR_TEMPLATE_RESOURCE</name>
      <fieldName>ERROR_TEMPLATE_RESOURCE</fieldName>
      <desc>no description</desc>
      <defaultValue>META-INF/rsc/myfaces-dev-error.xml</defaultValue>
      <sourceClassName>org.apache.myfaces.renderkit.ErrorPageWriter</sourceClassName>
      <since>1.2.4</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.DEBUG_TEMPLATE_RESOURCE</name>
      <fieldName>DEBUG_TEMPLATE_RESOURCE</fieldName>
      <desc>no description</desc>
      <defaultValue>META-INF/rsc/myfaces-dev-debug.xml</defaultValue>
      <sourceClassName>org.apache.myfaces.renderkit.ErrorPageWriter</sourceClassName>
      <since>1.2.4</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.ERROR_HANDLING</name>
      <fieldName>ERROR_HANDLING_PARAMETER</fieldName>
      <desc>Indicate if myfaces is responsible to handle errors</desc>
      <longDesc>Indicate if myfaces is responsible to handle errors. 
See http://wiki.apache.org/myfaces/Handling_Server_Errors for details.</longDesc>
      <defaultValue>false, on Development Project stage: true</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.renderkit.ErrorPageWriter</sourceClassName>
      <since>1.2.4</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION</name>
      <fieldName>NUMBER_OF_VIEWS_IN_SESSION_PARAM</fieldName>
      <desc>Defines the amount (default = 20) of the latest views are stored in session</desc>
      <longDesc>
<![CDATA[
Defines the amount (default = 20) of the latest views are stored in session.

<p>Only applicable if state saving method is "server" (= default).
</p>
]]>
      </longDesc>
      <defaultValue>20</defaultValue>
      <sourceClassName>org.apache.myfaces.renderkit.ServerSideStateCacheImpl</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.NUMBER_OF_SEQUENTIAL_VIEWS_IN_SESSION</name>
      <fieldName>NUMBER_OF_SEQUENTIAL_VIEWS_IN_SESSION_PARAM</fieldName>
      <desc>Indicates the amount of views (default is not active) that should be stored in session between sequential
POST or POST-REDIRECT-GET if org</desc>
      <longDesc>
<![CDATA[
Indicates the amount of views (default is not active) that should be stored in session between sequential
POST or POST-REDIRECT-GET if org.apache.myfaces.USE_FLASH_SCOPE_PURGE_VIEWS_IN_SESSION is true.

<p>Only applicable if state saving method is "server" (= default). For example, if this param has value = 2 and 
in your custom webapp there is a form that is clicked 3 times, only 2 views
will be stored and the third one (the one stored the first time) will be removed from session, even if the view can
store more sessions org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION. This feature becomes useful for multi-window applications.
where without this feature a window can swallow all view slots so the other ones will throw ViewExpiredException.</p>
]]>
      </longDesc>
      <sourceClassName>org.apache.myfaces.renderkit.ServerSideStateCacheImpl</sourceClassName>
      <since>2.0.6</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</name>
      <fieldName>SERIALIZE_STATE_IN_SESSION_PARAM</fieldName>
      <desc>Indicate if the state should be serialized before save it on the session</desc>
      <longDesc>
<![CDATA[
Indicate if the state should be serialized before save it on the session. 
<p>
Only applicable if state saving method is "server" (= default).
If <code>true</code> (default) the state will be serialized to a byte stream before it is written to the session.
If <code>false</code> the state will not be serialized to a byte stream.
</p>
]]>
      </longDesc>
      <defaultValue>true</defaultValue>
      <sourceClassName>org.apache.myfaces.renderkit.ServerSideStateCacheImpl</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.COMPRESS_STATE_IN_SESSION</name>
      <fieldName>COMPRESS_SERVER_STATE_PARAM</fieldName>
      <desc>Indicates that the serialized state will be compressed before it is written to the session</desc>
      <longDesc>
<![CDATA[
Indicates that the serialized state will be compressed before it is written to the session. By default true.

Only applicable if state saving method is "server" (= default) and if <code>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</code> is <code>true</code> (= default).
If <code>true</code> (default) the serialized state will be compressed before it is written to the session.
If <code>false</code> the state will not be compressed.
]]>
      </longDesc>
      <defaultValue>true</defaultValue>
      <sourceClassName>org.apache.myfaces.renderkit.ServerSideStateCacheImpl</sourceClassName>
      <since>1.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.CACHE_OLD_VIEWS_IN_SESSION_MODE</name>
      <fieldName>CACHE_OLD_VIEWS_IN_SESSION_MODE</fieldName>
      <desc>Define the way of handle old view references(views removed from session), making possible to
store it in a cache, so the state manager first try to get the view from the session</desc>
      <longDesc>
<![CDATA[
Define the way of handle old view references(views removed from session), making possible to
store it in a cache, so the state manager first try to get the view from the session. If is it
not found and soft or weak ReferenceMap is used, it try to get from it.
<p>
Only applicable if state saving method is "server" (= default).
</p>
<p>
The gc is responsible for remove the views, according to the rules used for soft, weak or phantom
references. If a key in soft and weak mode is garbage collected, its values are purged.
</p>
<p>
By default no cache is used, so views removed from session became phantom references.
</p>
<ul> 
<li> off, no: default, no cache is used</li> 
<li> hard-soft: use an ReferenceMap(AbstractReferenceMap.HARD, AbstractReferenceMap.SOFT)</li>
<li> soft: use an ReferenceMap(AbstractReferenceMap.SOFT, AbstractReferenceMap.SOFT, true) </li>
<li> soft-weak: use an ReferenceMap(AbstractReferenceMap.SOFT, AbstractReferenceMap.WEAK, true) </li>
<li> weak: use an ReferenceMap(AbstractReferenceMap.WEAK, AbstractReferenceMap.WEAK, true) </li>
</ul>
]]>
      </longDesc>
      <defaultValue>off</defaultValue>
      <expectedValues>off, no, hard-soft, soft, soft-weak, weak</expectedValues>
      <sourceClassName>org.apache.myfaces.renderkit.ServerSideStateCacheImpl</sourceClassName>
      <since>1.2.5</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.USE_FLASH_SCOPE_PURGE_VIEWS_IN_SESSION</name>
      <fieldName>USE_FLASH_SCOPE_PURGE_VIEWS_IN_SESSION</fieldName>
      <desc>Allow use flash scope to keep track of the views used in session and the previous ones,
so server side state saving can delete old views even if POST-REDIRECT-GET pattern is used</desc>
      <longDesc>
<![CDATA[
Allow use flash scope to keep track of the views used in session and the previous ones,
so server side state saving can delete old views even if POST-REDIRECT-GET pattern is used.

<p>
Only applicable if state saving method is "server" (= default).
The default value is false.</p>
]]>
      </longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true, false</expectedValues>
      <sourceClassName>org.apache.myfaces.renderkit.ServerSideStateCacheImpl</sourceClassName>
      <since>2.0.6</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.HANDLE_STATE_CACHING_MECHANICS</name>
      <fieldName>INIT_PARAM_HANDLE_STATE_CACHING_MECHANICS</fieldName>
      <desc>Define if the state caching code should be handled by the ResponseStateManager or by the StateManager used</desc>
      <longDesc>
<![CDATA[
Define if the state caching code should be handled by the ResponseStateManager or by the StateManager used.
<p>
This param is used to keep compatibility with previous state managers implementations depending from old myfaces
way to deal with this. For example, JspStateManagerImpl requires this param set to false, but by default 
it is set to true, to keep aligned with the Reference Implementation (RI).
</p>
]]>
      </longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true, false</expectedValues>
      <sourceClassName>org.apache.myfaces.renderkit.html.HtmlResponseStateManager</sourceClassName>
      <since>2.0.6</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.USE_MULTIPLE_JS_FILES_FOR_JSF_UNCOMPRESSED_JS</name>
      <fieldName>USE_MULTIPLE_JS_FILES_FOR_JSF_UNCOMPRESSED_JS</fieldName>
      <desc>If this param is true and the project stage is development mode,
the source javascript files will be loaded separately instead have
all in just one file, to preserve line numbers and make javascript
debugging of jsf</desc>
      <longDesc>If this param is true and the project stage is development mode,
the source javascript files will be loaded separately instead have
all in just one file, to preserve line numbers and make javascript
debugging of jsf.js more simple.</longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.resource.InternalClassLoaderResourceLoader</sourceClassName>
      <since>2.0.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.SERVICE_PROVIDER_FINDER</name>
      <fieldName>SERVICE_PROVIDER_FINDER_PARAM</fieldName>
      <desc>Class name of a custom ServiceProviderFinder implementation.</desc>
      <sourceClassName>org.apache.myfaces.spi.ServiceProviderFinderFactory</sourceClassName>
      <since>2.0.3</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER</name>
      <fieldName>PARAM_DISABLE_JSF_FACELET</fieldName>
      <desc>Disable facelets VDL from the current application project</desc>
      <longDesc>Disable facelets VDL from the current application project.</longDesc>
      <defaultValue>false</defaultValue>
      <expectedValues>true,false</expectedValues>
      <sourceClassName>org.apache.myfaces.view.ViewDeclarationLanguageFactoryImpl</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.SAVE_STATE_WITH_VISIT_TREE_ON_PSS</name>
      <fieldName>SAVE_STATE_WITH_VISIT_TREE_ON_PSS</fieldName>
      <desc>If this param is set to true (by default), when pss algorithm is executed to save state, a visit tree
traversal is done, instead a plain traversal like previous versions (2</desc>
      <longDesc>If this param is set to true (by default), when pss algorithm is executed to save state, a visit tree
traversal is done, instead a plain traversal like previous versions (2.0.7/2.1.1 and earlier) of MyFaces Core.

This param is just provided to preserve backwards behavior.</longDesc>
      <defaultValue>true</defaultValue>
      <expectedValues>true, false</expectedValues>
      <sourceClassName>org.apache.myfaces.view.facelets.DefaultFaceletsStateManagementStrategy</sourceClassName>
      <since>2.0.8, 2.1.2</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.FACELETS_BUFFER_SIZE</name>
      <fieldName>PARAM_BUFFER_SIZE</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>facelets.BUFFER_SIZE</name>
      <fieldName>PARAM_BUFFER_SIZE_DEPRECATED</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.FACELETS_DECORATORS</name>
      <fieldName>PARAM_DECORATORS</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>facelets.DECORATORS</name>
      <fieldName>PARAM_DECORATORS_DEPRECATED</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.FACELETS_LIBRARIES</name>
      <fieldName>PARAM_LIBRARIES</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>facelets.LIBRARIES</name>
      <fieldName>PARAM_LIBRARIES_DEPRECATED</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.FACELETS_REFRESH_PERIOD</name>
      <fieldName>PARAM_REFRESH_PERIOD</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>facelets.REFRESH_PERIOD</name>
      <fieldName>PARAM_REFRESH_PERIOD_DEPRECATED</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.FACELETS_RESOURCE_RESOLVER</name>
      <fieldName>PARAM_RESOURCE_RESOLVER</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>facelets.RESOURCE_RESOLVER</name>
      <fieldName>PARAM_RESOURCE_RESOLVER_DEPRECATED</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>javax.faces.FACELETS_SKIP_COMMENTS</name>
      <fieldName>PARAM_SKIP_COMMENTS</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>facelets.SKIP_COMMENTS</name>
      <fieldName>PARAM_SKIP_COMMENTS_DEPRECATED</fieldName>
      <desc>no description</desc>
      <sourceClassName>org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.CACHE_EL_EXPRESSIONS</name>
      <fieldName>INIT_PARAM_CACHE_EL_EXPRESSIONS</fieldName>
      <desc>Indicates if expressions generated by facelets should be cached or not</desc>
      <longDesc>
<![CDATA[
Indicates if expressions generated by facelets should be cached or not. Default is noCache. There there are four modes:

<ul>
<li>always: Only does not cache when expressions are inside user tags or the expression contains a variable resolved using VariableMapper</li>
<li>allowCset: Like always, but does not allow cache when ui:param was used on the current template context</li>
<li>strict: Like allowCset, but does not allow cache when c:set with var and value properties only is used on the current page context</li>
<li>noCache: All expression are created each time the view is built</li>
</ul>
]]>
      </longDesc>
      <defaultValue>noCache</defaultValue>
      <expectedValues>noCache, strict, allowCset, always</expectedValues>
      <sourceClassName>org.apache.myfaces.view.facelets.impl.FaceletCompositionContextImpl</sourceClassName>
      <since>2.0.8</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.EXPRESSION_FACTORY</name>
      <fieldName>EXPRESSION_FACTORY</fieldName>
      <desc>This parameter specifies the ExpressionFactory implementation to use</desc>
      <longDesc>This parameter specifies the ExpressionFactory implementation to use.</longDesc>
      <sourceClassName>org.apache.myfaces.webapp.AbstractFacesInitializer</sourceClassName>
      <since>1.2.7</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.INITIALIZE_ALWAYS_STANDALONE</name>
      <fieldName>INITIALIZE_ALWAYS_STANDALONE</fieldName>
      <desc>If this param is set to true, the check for faces servlet mapping is not done</desc>
      <longDesc>If this param is set to true, the check for faces servlet mapping is not done</longDesc>
      <defaultValue>false</defaultValue>
      <sourceClassName>org.apache.myfaces.webapp.AbstractFacesInitializer</sourceClassName>
      <since>2.0.3</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.FACES_INITIALIZER</name>
      <fieldName>FACES_INITIALIZER_PARAM</fieldName>
      <desc>Class name of a custom FacesInitializer implementation.</desc>
      <sourceClassName>org.apache.myfaces.webapp.FacesInitializerFactory</sourceClassName>
      <since>2.0.1</since>
    </webConfigParam>
    <webConfigParam>
      <name>org.apache.myfaces.FACES_INIT_PLUGINS</name>
      <fieldName>FACES_INIT_PLUGINS</fieldName>
      <desc>comma delimited list of plugin classes which can be hooked into myfaces</desc>
      <longDesc>comma delimited list of plugin classes which can be hooked into myfaces</longDesc>
      <sourceClassName>org.apache.myfaces.webapp.StartupServletContextListener</sourceClassName>
      <since>2.0</since>
    </webConfigParam>
  </webConfig>
</model>




© 2015 - 2024 Weber Informatics LLC | Privacy Policy