[jbossseam-issues] [JBoss JIRA] Commented: (JBSEAM-944) Parallel root conversations with dynamic conversation entries

Christian Bauer (JIRA) jira-events at lists.jboss.org
Mon Apr 2 13:28:58 EDT 2007


    [ http://jira.jboss.com/jira/browse/JBSEAM-944?page=comments#action_12358121 ] 
            
Christian Bauer commented on JBSEAM-944:
----------------------------------------

OK, so I now have a much better understanding of what I want and what pieces our conversation/navigation model is missing. Gavin, we need to meet in person to go through this.

> Parallel root conversations with dynamic conversation entries
> -------------------------------------------------------------
>
>                 Key: JBSEAM-944
>                 URL: http://jira.jboss.com/jira/browse/JBSEAM-944
>             Project: JBoss Seam
>          Issue Type: Feature Request
>          Components: Core
>            Reporter: Christian Bauer
>            Priority: Minor
>
> The use case here is two navigation links are visible on all pages and they are supposed to start new root conversations whenever they are clicked (not nest, not join). Navigation via conversation list/switcher.
> <s:link action="doFoo" propagation="none"/>
> <s:link action="doBar" propagation="none"/>
> Mapping:
> <page view-id="/mypage.xhtml">
>   <rule if-outcome="foo">
>     <begin-conversation flush-mode="MANUAL"/>
>     <redirect view-id="/fooConversation.xhtml"/>
>   </rule>
>   <rule if-outcome="bar">
>     <begin-conversation flush-mode="MANUAL"/>
>     <redirect view-id="/barConversation.xhtml"/>
>   </rule>
> <page>
> <page view-id="/fooConversation.xhtml">
>     My Name is #{fooBackingBean.name}
> </page>
> <page view-id="/barConversation.xhtml">
>     My Name is #{barBackingBean.name}
> </page>
> The issue is how page descriptions in conversation entries are stored, in the SeamPhaseListener after RENDER RESPONSE. 
> Sequence:
> 1. Call /mypage.xhtml and click on 'foo', a conversation is created and /fooConversation.xhtml is rendered
> 2. Click on 'doBar', a request is send to /fooConversation.xhtml?actionOutcome=doBar - no conversation is propagated
> 3. The navigation rule kicks in and does the redirect, before that happens, AFTER RENDER RESPONSE is executed and the prepareBackswitch() stores the conversation entries, /barConversation.xhtml is rendered
> 4. Click on 'doFoo', a request is send to /barConversation.xhtml?actionOutcome=doFoo - no conversation is propagated
> 5. The navigation rule kicks in and does the redirect, before that happens, AFTER RENDER RESPONSE is executed and the prepareBackswitch() stores the conversation entries, I GET EXCEPTIONS in the log because "My name is #{fooBackingBean.name}' triggers create() of fooBackingBean which can't be created without the right request parameters - the interesting part is that I still get the name from somewhere, I see it in the conversation switcher
> So this could either be a bug (because visually it's working, I see the correct conversation description in the switcher UI) that involves resolving of view-id descriptions or I need a different approach to get new root conversations in parallel on every click.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the seam-issues mailing list