composite:interface, attribute and facet should handle unspecified attributes
and should expose certain values only in Development stage (spec rev A)
-----------------------------------------------------------------------------------------------------------------------------------------------------
Key: MYFACES-2825
URL: https://issues.apache.org/jira/browse/MYFACES-2825
Project: MyFaces Core
Issue Type: Task
Components: JSR-314
Affects Versions: 2.0.0
Reporter: Jakob Korherr
Assignee: Jakob Korherr
>From the spec rev A, section 3.6.2.1:
- The "name" attributes of the <composite:interface/ > element is exposed using
the corresponding method on the composite component BeanDescriptor. If
ProjectStage is Development, The "displayName", "shortDescription", "expert",
"hidden", and "preferred" attributes of the <composite:interface/ > element are
exposed using the corresponding methods on the composite component
BeanDescriptor. Any additional attributes on <composite:interface/ > are
exposed as attributes accessible from the getValue() and attributeNames()
methods on BeanDescriptor (inherited from FeatureDescriptor). The return type
from getValue() must be a javax.el.ValueExpression for such attributes.
- Any attributes declared by the composite component author using
<composite:attribute/ > elements must be exposed in the array of
PropertyDescriptors returned from getPropertyDescriptors() on the composite
component BeanInfo.
For each such attribute, for any String or boolean valued JavaBeans properties
on the interface PropertyDescriptor (and its superinterfaces) that are also
given as attributes on a <composite:attribute/ > element, those properties must
be exposed as properties on the PropertyDescriptor for that markup element. Any
additional attributes on <composite:attribute/ > are exposed as attributes
accessible from the getValue() and attributeNames() methods on
PropertyDescriptor. The return type from getValue() must be a ValueExpression.
Although not explicitly mentioned in the spec, this also affects
<composite:facet>, because this tag also creates a java.beans descriptor and
this tag also has the above mentioned development attributes. A black box test
of Mojarra confirmed this fact.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.