Question

I have a CDI bean:

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

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

My question is: what scope of this bean before conversationBegin() is called?

Was it helpful?

Solution

I think you're thinking about CDI wrong.

You hold a contextual reference to a bean with type MyBean. When you use it, a contextual instance is either created or obtained from the active conversation context and proxied by your contextual reference.

There is no change of scope. The only thing that changes over time is which context is active and whether there are instances already in the context or not.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top