1 Reply Latest reply on Jun 28, 2008 2:20 AM by Tomas Cerny

    Nested Natural Conversation End by bean

    Tomas Cerny Novice

      I have a nested natural conversation and I am in nested one. I want to kill the nested one and return back to the parent.



      I do not have a problem to do this from JSF, but it seems complicated from a bean.


      I guess I need to end the current conversation 


      Conversation.instance().end();



      Then I would love to redirect to my parent conversation:


      Conversation.instance().redirectToParent();





      Well it throws this Manager.class:


      public void updateCurrentConversationId(String id)
         {
            if ( ConversationEntries.instance().getConversationIds().contains(id) )
            {
               throw new IllegalStateException("Conversation id is already in use: " + id);
            }...
            



      Called from FacesManager.class:


      public void beforeRedirect(String viewId)



      Called by


      public void redirect(String viewId, Map<String, Object> parameters, 
                  boolean includeConversationId)



      ..


      called by Conversation.class::redirectToParent()


      So why this not redirect to the conversation that is already there?


      I remember reading somewhere that Seam does not fully support natural conversations?


      Am I right? Is there a solution that I do not see?


      So I can do something similar


       ceNested.destroy();
        ce.redirect();



      But for some reason my


      Converation History


      Does not show my conversation any more. This information is available in debug.seam page so why it does not show up in Conversation History?


      Tomas