]
Alexander Hanschke commented on WELD-783:
-----------------------------------------
Thank you Ales, I just filed a bug to the Glassfish Jira:
@EJB injection fails in @Named bean when interceptor is present
---------------------------------------------------------------
Key: WELD-783
URL:
https://issues.jboss.org/browse/WELD-783
Project: Weld
Issue Type: Bug
Components: CDI API, GlassFish Integration, Interceptors and Decorators
Affects Versions: 1.0.1.Final
Environment: Windows 7, NetBeans 6.9.1, GlassFish 3.0.1, Mojarra 2.0.2 (FCS
b10), Java 1.6.0_22
Reporter: Alexander Hanschke
Assignee: Ales Justin
Labels: cdi, ejb, injection, interceptors
Fix For: 1.2.0.Beta1
Attachments: interceptor-bug.zip
I have a @Named bean in which I'd like to inject a component, using @Inject as well
as a stateless session bean, using @EJB. The ejb is accessed using the no-interface view.
Both references get injected properly in that case, but when I use an interceptor on one
of the methods, only the references annotated with @Inject get injected, whereas those
annotated with @EJB don't.
The interceptor doesn't need to do anything special, this behaviour occurs even if
only proceed() is invoked on the invocation context - the interceptor is always invoked
correctly.
The following snippet explains the issue:
@Named
public class MyController {
@EJB
private MyDao dao;
@Interceptors(MyInterceptor.class)
public void control() {
dao.doDataAccessStuff(); /* NPE */
}
}
---------------------------------------------------------------
@Stateless
public class MyDao {
public void doDataAccessStuff() { ... }
}
---------------------------------------------------------------
public class MyInterceptor {
@AroundInvoke
public Object intercept(InvocationContext context) throws Exception {
return context.proceed();
}
}
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: