处理多个注入的@ConversationScoped bean的正确方法

时间:2019-08-05 09:48:06

标签: scope cdi weld jboss-weld conversation-scope

我要在一个@ViewScoped bean中注入多个@ConversationScoped bean,这导致了很多“会话锁定”问题。

为解决此问题,在所有@ConversationScoped bean中,我放置了几行代码以在开始新对话之前结束现有对话。

您可以看到进入begin()时,在开始新的对话之前,我将结束所有先前的对话。

public void begin() {
   if (conversation != null
       && !conversation.isTransient()) {
           end();
   }

   if (conversation.isTransient()) {
      conversation.begin();
   }
}

这是正确的方法吗?这会引起问题吗?

0 个答案:

没有答案