[cdi-dev] [JBoss JIRA] (CDI-502) Clarify "contains" meaning in "Legal bean types" specification.

Tomasz Krakowiak (JIRA) issues at jboss.org
Wed Jan 28 05:57:48 EST 2015


Tomasz Krakowiak created CDI-502:
------------------------------------

             Summary: Clarify "contains" meaning in "Legal bean types" specification.
                 Key: CDI-502
                 URL: https://issues.jboss.org/browse/CDI-502
             Project: CDI Specification Issues
          Issue Type: Clarification
          Components: Beans, Inheritance and Specialization
            Reporter: Tomasz Krakowiak


CDI 1.1, section 2.2.1. Legal bean types says:
{quote}
A parameterized type that contains a wildcard type parameter is not a legal bean type.
{quote}

Does it means direct containment or deep/recursive containment?

I understand this is clearly illegal:
{code}
@Produces
List<?> produceList(){
//...
}
{code}

But, are those two bean definitions legal:
{code}
@Produces
List<Optional<?>> produceList(){
//...
}
{code}
{code}
// Bean types: MyList, List<Optional<?>>, Object
// or
// Bean types: MyList, Object
@Dependent
MyList extends List<Optional<?>> {
//...
}
{code}






--
This message was sent by Atlassian JIRA
(v6.3.11#6341)


More information about the cdi-dev mailing list