1 Reply Latest reply on Mar 7, 2008 2:54 AM by Gavin King

    Seam - JPDL - beginning a pageflow

    Guillaume Jeudy Master

      I experimented with methods to begin a pageflow in seam 2.0.1.


      It seems like the pages.xml method doesn't work if you are joining an existing conversation, the page flow doesn't get started see:


      jpdl:


      <pageflow-definition name="manageProduct">
      
          
      
         <start-page name="editProduct" view-id="/editProduct.xhtml">
      
               <transition name="next" to="addProductFamilyRel">
      
                      <action expression="#{productAction.saveAttributes}" />
      
                 </transition>
      
                 <transition name="cancel" to="end" />
      
         </start-page>



      pages.xml:


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



      JSF that should trigger this page rule:


      jsf page:


      <h:form id="addproduct">
      
                     <h:commandButton action="/editProduct.xhtml" value="Add Product" />
      
                </h:form>



      if I try exactly the same but with:


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



      seam starts the pageflow in a nested conversation.


      Interestingly enough if I try to start the same pageflow from:


       <s:link pageflow="manageProduct" propagation="begin" />



      instead of a pages.xml rule it works normally even if i'm already inside a conversation. Is this because


      s:link propagation="begin" 



      will start a new conversation in parallel of the existing conversation? I decided to drop the s:link approach because it would force me to start the pageflow from every possible link in my page and it also triggers Illegal Navigation FacesMessage in the next page render (pageflow startpage).


      Any help to clarify all this would be appreciated,


      Page flow cannot be started when joining an existing conversation sounds like a bug to me unless i'm not using this as intended ?


      Thanks,
      -Guillaume