在另一个注入@SessionScoped CDI bean时,它们是否属于同一个会话?

时间:2011-11-21 14:16:01

标签: java jsf code-injection cdi

我正在编写一个JSF应用程序,我需要将一个命名bean注入另一个,例如:

@Named
@SessionScoped
public class BeanA implements Serializable{
    @Inject private BeanB b;
    public void doSth(){
        b.doSth();
    }
}

@Named
@SessionScoped
public class BeanB implements Serializable{}

它们都是SessionScoped,我希望BeanA的实例及其注入的BeanB将保持相同的会话状态。

是随机选择还是创建BeanB实例还是选择具有相同会话ID的实例?谢谢!

1 个答案:

答案 0 :(得分:1)

操作部分是BeanB是会话范围的,因此无论何时注入一个(无论如何或在何处(@New)),它都将根据当前会话进行管理。