Martin Kouba created CDI-438:
--------------------------------
Summary: Fix type parameters ordering in ProcessProducerMethod and
ProcessProducerField events
Key: CDI-438
URL:
https://issues.jboss.org/browse/CDI-438
Project: CDI Specification Issues
Issue Type: Bug
Affects Versions: 1.2.Final
Reporter: Martin Kouba
Since CDI 1.0 there is an inconsistency in the description of {{ProcessProducerMethod}}
event...
The text:
{quote}
For a producer method with method return type X of a bean with bean class T, the container
must raise an event of type ProcessProducerMethod<T, X>.
{quote}
API:
{code:java}
/**
* @param <T> The return type of the producer method
* @param <X> The class of the bean declaring the producer method
*/
public interface ProcessProducerMethod<T, X> extends ProcessBean<X> {
}
{code}
The same applies to {{ProcessProducerField}}.
TCK and RI (Weld) follow the API. As one of the consequences an
{{ProcessProducerMethod<Foo,Producer>}} event is not delivered to an observer with
the event parameter {{ProcessBean<Foo>}}.
It's obvious that JCP compatibility rules required to keep the wrong ordering for CDI
1.x (see also the comments in {{javax.enterprise.inject.spi.ProcessProducerMethod}}). I
believe this should be fixed in CDI 2.0.
--
This message was sent by Atlassian JIRA
(v6.2.3#6260)