[cdi-dev] [JBoss JIRA] (CDI-70) Clarify that if an extension provides an Annotated* then it is considered "metadata complete"
Martin Kouba (Reopened) (JIRA)
jira-events at lists.jboss.org
Tue Dec 13 07:04:10 EST 2011
[ https://issues.jboss.org/browse/CDI-70?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Martin Kouba reopened CDI-70:
-----------------------------
The spec states:
"The container must use the operations of Annotated and its subinterfaces to discover program element types and annotations. The container must not directly call the Java Reflection API. In particular, the container must: call AnnotatedType.getConstructors(), AnnotatedType.getMethods() and AnnotatedType.getFields() to determine the members of a bean class."
However javadoc for *javax.enterprise.inject.spi.AnnotatedType.getConstructors()* states:
"Get the constructors of the type. If an empty set is returned, a default constructor with no parameters will be assumed."
IMHO this is contradictory.
> Clarify that if an extension provides an Annotated* then it is considered "metadata complete"
> ---------------------------------------------------------------------------------------------
>
> Key: CDI-70
> URL: https://issues.jboss.org/browse/CDI-70
> Project: CDI Specification Issues
> Issue Type: Clarification
> Components: Portable Extensions
> Affects Versions: 1.0
> Reporter: Pete Muir
> Assignee: Pete Muir
> Fix For: 1.1.EDR1
>
>
> I think the correct behavior is to ignore any members that are missing from the AnnotatedType. You should not be directly accessing the reflection API at all. If the parameters for a method or a constructor don't match the underlying class, it should be considered a definition error.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the cdi-dev
mailing list