@Retention(value=RUNTIME)
@Target(value=TYPE)
@Inherited
public @interface FacesComponent
The presence of this annotation on a class that extends
UIComponent
must cause the runtime to register this class as a component suitable for
inclusion in a view. If the createTag
attribute is
true
, the runtime must create a corresponding Facelet tag handler according to the
rules specified in the attributes of this annotation.
Modifier and Type | Fields and Description |
---|---|
static java.lang.String |
NAMESPACE
Components that declare a |
Modifier and Type | Optional Element and Description |
---|---|
boolean |
createTag
If the value of this attribute is |
java.lang.String |
namespace
If the value of the |
java.lang.String |
tagName
If the value of the |
java.lang.String |
value
The value of this annotation attribute is taken to
be the component-type with which instances of this class of component can be
instantiated by calling
|
public static final java.lang.String NAMESPACE
Components that declare a createTag = true
attribute will be placed into this
tag namespace if the namespace attribute is omitted.
public abstract java.lang.String value
The value of this annotation attribute is taken to
be the component-type with which instances of this class of component can be
instantiated by calling
Application.createComponent(java.lang.String)
.
If no value is specified, or the value is null
,
the value is taken to be the return of calling getSimpleName
on the class to
which this annotation is attached and lowercasing the first character. If more than one
component with this derived name is found, the results are undefined.
public abstract boolean createTag
If the value of this attribute is true
, the runtime must create a Facelet tag
handler, that extends from ComponentHandler
, suitable for
use in pages under the tag library with namespace given by the value of the
namespace()
attribute.
true
to create the Facelet tag handler, false
otherwise.public abstract java.lang.String tagName
If the value of the createTag()
attribute is true
, the runtime must use
this value as the tag name for including an instance of the component annotated with this
annotation in a view. If this attribute is not specified on a usage of this annotation, the
simple name of the class on which this annotation is declared, with the first character
lowercased, is taken to be the value.
public abstract java.lang.String namespace
If the value of the createTag()
attribute is true
, the value of this
attribute is taken to be the tag library namespace into which this component is placed.