【发布时间】:2016-02-26 08:18:20
【问题描述】:
我想在注入期间为 CDI 中的 pojo bean 提供移动范围。
我创建了一个普通的 bean,并在 @javax.faces.bean.ViewScoped 托管 Bean 中注入了与 @javax.enterprise.context.ApplicationScoped 相同的内容,如下所示:
@Inject
@ApplicationScoped
Pojo pojo;
// POJO类
Class Pojo {
private String var;
public Pojo() {
}
public String getVar() {
return var;
}
public void setVar(String var) {
this.var = var;
}
}
当我使用相同的语法注入时,Pojo bean 的填充值无法在新视图 bean 中恢复。
但是当我在类声明中使用 @ApplicationScoped 时,它会起作用,然后是非作用域注入,如下所示:
@ApplicationScoped
Class Pojo {
private String var;
注入:
@Inject
Pojo pojo;
当我制作制作人和限定符时,前一种情况得到了解决,但我觉得这将是我不应该做的开销。作为 CDI 的新手,我想问一下我在这里真正缺少什么。
【问题讨论】: