调用conversation.begin方法之前bean的范围

时间:2014-03-16 15:16:51

标签: scope cdi

我有一个CDI bean:

@Named
@ConversationScoped
public class MyBean implements Serializable{
      @Inject
      private Conversation converstion;

      private void conversationBegin() {
          converstion.begin();
      }
}

我的问题是: 调用conversationBegin()之前这个bean的范围是什么?

1 个答案:

答案 0 :(得分:2)

我认为您正在考虑CDI错误。

您对具有MyBean类型的bean持有上下文引用。当您使用它时,可以从活动对话上下文创建或获取上下文实例,并由您的上下文引用代理。

范围没有变化。随着时间的推移,唯一变化的是上下文是否处于活动状态以及上下文中是否已存在实例。