[
https://issues.jboss.org/browse/CDI-696?page=com.atlassian.jira.plugin.sy...
]
Martin Kouba commented on CDI-696:
----------------------------------
See also "1.2.2. Relationship to EJB":
bq. Message-driven and entity beans are by nature non-contextual objects and may not be
injected into other objects.
And "3.6. Java EE components":
bq. Most Java EE components support injection and interception, as defined in the Java
Platform, Enterprise Edition Specification 7, table EE.5-1, but are not considered beans
(as defined by this specification). EJBs, as defined in Session beans are an exception.
Decorator for MDB is not used
-----------------------------
Key: CDI-696
URL:
https://issues.jboss.org/browse/CDI-696
Project: CDI Specification Issues
Issue Type: Bug
Components: Decorators, Java EE integration
Reporter: Alexandr Sokolov
Guys, I'm using Wildfly 8.2.1.Final
Here is MDB bean:
{code:java}
@MessageDriven(activationConfig = {
@ActivationConfigProperty(propertyName = "destinationLookup",
propertyValue = "topic/dse"),
@ActivationConfigProperty(propertyName = "destinationType",
propertyValue = "javax.jms.Topic")
})
public class JobChangedSubscriber implements MessageListener {
...
@Override
public void onMessage(final Message message) {
...
}
}
{code}
And decorator:
{code:java}
@Decorator
public class RetroplannerSubscriber implements MessageListener {
@Inject
@Delegate
@Any
JobChangedSubscriber jobChangedSubscriber;
@Override
public void onMessage(Message message) {
jobChangedSubscriber.onMessage(message);
//custom code
}
}
{code}
During deployment, all mistakes about decorator definition are shown. They were fixed. I
was sure it would work. But now, only JobChangedSubscriber.onMessage() is invoked.
As a user I want to decorate MDB as an usual CDI bean. What am I doing wrong?
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)