Sorry, it does not work either.

In Manager class there is an unlockConversation() method. After the nested 
conversation is destroyed, getCurrentConversationEntry() will return null, and 
its stack (which is obviously not empty) won't be unlocked.

I suppose something like that:
   public void unlockConversation()
  |    {
  |       ConversationEntry ce = getCurrentConversationEntry();
  |       if (ce!=null)
  |       {
  |           ce.unlock();
  |       }
  |       else
  |       {
  |           // current can be destroyed, but its stack can be not even 
unlocked
  |           for  ( String conversationId: currentConversationIdStack )
  |           {
  |               if (conversationId.equals(currentConversationId)) continue; 
// destroyed
  |               ConversationEntry cen =
  |                      
ConversationEntries.instance().getConversationEntry(conversationId);
  |               if (cen != null)
  |               {
  |                   cen.unlock();
  |                   break;
  |               }
  |           }
  |       }
  |    }

It works :) After you did the whole stack to share one lock instance, the 
problem is nearly solved.

Btw, thank you for Seam :)


View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3982979#3982979

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3982979
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to