[jbossseam-issues] [JBoss JIRA] Commented: (JBSEAM-906) Support redirect component for navigation out of conversational scope
Christian Bauer (JIRA)
jira-events at lists.jboss.org
Sat Feb 24 22:53:40 EST 2007
[ http://jira.jboss.com/jira/browse/JBSEAM-906?page=comments#action_12354234 ]
Christian Bauer commented on JBSEAM-906:
----------------------------------------
The issue seems to be that the page parameter is not in the page context, Pages.java:652:
Object object = Contexts.getPageContext().get( pageParameter.getName() );
Returns null when ConversationControl.beginOrEndConversation runs and captures the view. Don't know when page parameters are initialized, if before or after the conversation control, probably easy if you understand AbstractSeamPhaseListener.
> Support redirect component for navigation out of conversational scope
> ---------------------------------------------------------------------
>
> Key: JBSEAM-906
> URL: http://jira.jboss.com/jira/browse/JBSEAM-906
> Project: JBoss Seam
> Issue Type: Feature Request
> Components: Core
> Reporter: Christian Bauer
> Assigned To: Gavin King
> Priority: Minor
> Fix For: 1.1.8.GA
>
> Attachments: navigation-patch.diff, ReturnToCapturedViewNavigationHandler.java, ReturnToParentViewNavigationHandler.java
>
>
> It's about my favorite subject, the "history" or "cancel" button.
> Assume the following (RC == Root Conversation, NC == Nested Conversation):
> RC(1) -> NC(2) -> NC(3)
> I can render a Cancel button on each page in NC 2 and 3 with the action=#{conversation.endAndRedirect()} to get back to any parent NC or RC.
> I can not render a Cancel button on each page in RC, because there is no "parent view-id" we could redirect to. So my Cancel button on these pages has to call some logic I've written on my RC backing component.
> I propose to extend the Conversation.endAndRedirect() method with the following logic:
> - If called in a NC, do what it currently does.
> - If called in a RC, check if the 'redirect' component is present in RC, if yes, call 'redirect.execute()'
> If this would be available, I could completely control conversation navigation and the navigation history through nesting conversations (with s:link or pages.xml) and by ensuring that a RC has a prepared 'redirect' component when it is started. All Cancel buttons would be able to use action="#{conversation.endAndRedirect()}" and would either get the user "one up" in the conversation stack or "out" of conversational scope.
--
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