问题描述
在我们的 JEE 应用程序中,我们在 CDI bean (@ApplicationScoped) 上创建了一个新的注释 @MyAnnotation。
然后我们有一个拦截器,它用@MyAnnotation注解拦截所有bean。
问题是它不适用于由 @Produces 方法创建的 bean。
这意味着拦截器没有被调用。
所以如果我们有这个类:
@ApplicationScoped
public class OtherClass
{
@Inject
private MyBean myBean;
public void f()
{
myBean.g();
}
}
然后下面将起作用:
@ApplicationScoped
@MyAnnotation
public class MyBean
{
public void g() {}
}
但以下不会:
@ApplicationScoped
public class MyBeanProducer
{
@Produces
public MyBean create()
{
return new MyBean();
}
}
有没有办法让拦截器拦截用@Produces创建的CDI bean?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)