Jakarta ee @将接口注入到拦截器时注入null

Jakarta ee @将接口注入到拦截器时注入null,jakarta-ee,cdi,interceptor,weld,Jakarta Ee,Cdi,Interceptor,Weld,我创建了一个界面: interface A { Long getA(); } @Dependent class B implements A { @Resource(lookup="java:comp/EJBContext") SessionContext sessionContext; public Long getA(){ //impl } } 现在,当我将其注入拦截器时,它会抛出NPE,因为注入不起作用: public clas

我创建了一个界面:

interface A {
    Long getA();
}

@Dependent
class B implements A {
    @Resource(lookup="java:comp/EJBContext")
    SessionContext sessionContext;

    public Long getA(){
        //impl
    }
}
现在,当我将其注入拦截器时,它会抛出NPE,因为注入不起作用:

public class InterceptorTest {
    @Inject A a;

    @AroundInvoke
    public Object injectTenantId(InvocationContext ctx) throws Exception {
        a.getA();
        ctx.proceed();
    }
}

上面的代码抛出NPE是因为
A
null

您试图在哪个容器中运行
InterceptorTest
?(EJB、Web/Servlet等)拦截器是如何调用的?在拦截器类中,您似乎缺少了一个
@SomeAnnotation@Interceptor
。我使用的是Jboss 7.1.1(JAVA EE 6),请注意,在Jboss wildfly 8.2.2中,同样的事情也适用于您试图在哪个容器中运行
InterceptorTest
?(EJB、Web/Servlet等)拦截器是如何调用的?似乎在拦截器类中缺少了一个
@SomeAnnotation@Interceptor
。我使用的是Jboss 7.1.1(JAVA EE 6),请注意,Jboss wildfly 8.2.2中也有同样的功能