0 Replies Latest reply on Jan 30, 2007 2:49 AM by expls

    page flows and conversation management

    expls

      Hi there,

      I have a great problem using the page flows as I can not make Seam follow the page flow and manage the conversation. I suppose that this is because my config is not OK but I read and tried a lot but in vane.

      So please help me run a simple example:

      Envirounment: Tomcat 5.5 + MyFaces 1.1.4 + Tomahawk + Seam 1.1.0-ga
      No Annotations are allowed - XML only.
      All action methods of any beans return void and the navigation should be handled by Seam only by page flows. All beans are managed by Seam IoC container.

      Conversation 1:
      I have search view that allows the user to select a search criteria and start a search. When he/she invokes search the same page is shown but with a list of items found in the search. Then the user selects an item.
      The Bean is on session scope.

      Conversation 2 (nested):
      View with the details of the selected item is shown and upon some interaction the close button is hit(the conversation should end and thus the bean destroyed) and Conversation1should resume.
      The bean is on conversation scope and on creation it is fed with data from the bean of the parent conversation that is on session scope.

      Looks simple but it is not working at all. The nested conversation is not started or ended properly. When a nested conversation is ended the parent should be resumed, well it is not. I know that the flow is followed but why the conversations are not managed properly is something I can not imagine at all. I read a lot so if you do not know the answers....
      The manuals say almost nothing on the topic and the lack of DTD or something for the page flow definition files makes the process(at least for me) hard to the level to ask for help in the forum.

      pages.xml:

      <page
      view-id="/search.xhtml"
      >
      <begin-conversation join="true" pageflow="searchFlow" />

      <page
      view-id="/calculateView.xhtml"
      >
      <begin-conversation nested="true" pageflow="calculateFlow" />


      SearchFlow:

      <pageflow-definition name="searchFlow" >

      <start-page name="searchPF" view-id="/searchPortfolio.xhtml">












      </start-page>

      <page name="show" view-id="/calculateView.xhtml">
      <begin-conversation nested="true" pageflow="calculateFlow" />



      </pageflow-definition>


      CalculateFlow:

      <pageflow-definition name="calculateFlow" >

      <start-page name="calcualtePF" view-id="/calculateView.xhtml">









      <end-conversation/>


      </start-page>

      <page name="search" view-id="/search.xhtml">



      </pageflow-definition>