1 Reply Latest reply on Aug 14, 2012 8:20 AM by maschmid

    Conversations and Cascading <h:selectOneMenu /> - Seam 2.3.0Beta2

    sdnakhla

      I'm trying to implement a series of cascading <h:selectOneMenu /> components in my application.  (3 menus; the items change based on the values of the previous menus)  These menus are part of a workflow that is implemented as a long-running conversation.  This situation worked perfectly under Seam 2.2.2 using <a4j:support /> to make the Ajax calls to retrieve the relevant data.  All calls were maintained within the same conversation, and the values were set appropriately.

       

      In migrating this application to Seam 2.3.0, however, I am running into the situation where the Seam conversation is not being propagated when the value of the menu selection changes.  Instead, I'm seeing new conversations being created on each call.  I'm using Seam 2.3.0Beta2 with Richfaces 4.2.2 providing the JSF2 implementation.  In my UI, I have...

       

      <h:selectOneMenu id="firstMenu" value="xxx">

           <s:selectItems ... />

            <f:ajax event="change" render="secondMenu" />

      </h:selectOneMenu>

       

      <h:selectOneMenu id="secondMenu" value="yyy">

           <s:selectItems ... />

           ...

      </h:selectOneMenu>

       

      I see the appropriate data loading methods being called when the value of firstMenu changes, however it is not part of the same conversation that was created when the page was loaded.  The values are not maintained across calls, and when I view the debug page I see a new conversation being created each time the value changes.

       

      Is there any way to pass the conversation ID or force the ajax call to be part of the same conversation?  Everything worked in Seam 2.2.2 and JSF1.2, so I'm assuming there has to be a way to get this working.  Any help you can provide would be GREATLY appreciated.