[ 
http://www.stripesframework.org/jira/browse/STS-565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ben Gunter resolved STS-565.
----------------------------

       Resolution: Fixed
    Fix Version/s: Release 1.5

ActionBeans that were flashed and were intended to handle the ensuing request 
were not receiving the correct ActionBeanContext. That is fixed now.

> ActionBeanContext getEventName() does not return the right event when using 
> redirection and bean flash
> ------------------------------------------------------------------------------------------------------
>
>                 Key: STS-565
>                 URL: http://www.stripesframework.org/jira/browse/STS-565
>             Project: Stripes
>          Issue Type: Bug
>    Affects Versions: Release 1.5
>         Environment: Affects Stripes revision 905
>            Reporter: Christian Poitras
>            Assignee: Ben Gunter
>             Fix For: Release 1.5
>
>         Attachments: DispatcherHelper.java
>
>
> If I return a RedirectResolution calling a method from current action bean 
> and I flash the action bean, the event in action bean's context is not 
> correct.
> Let's say I have 2 handler.
> public Resolution update() {
>   return new RedirectResolution(this.getClass(), "done").flash(this);
> }
> public Resolution done() {
>   System.out.println(context.getEventName());
>   return new ForwardResolution("/index.jsp");
> }
> The output will be "update" instead of "done".
> The problem is described in this email I've sent to the list.
> I narrowed down the problem to a combination of what 
> AnnotatedClassActionResolver and DispathHelper do.
> In AnnotatedClassActionResolver method ActionBean 
> getActionBean(ActionBeanContext context, String path):
> The bean returned is the bean from previous request and the ActionBeanContext 
> is not updated except for request property.
> Then DispatchHelper sets the bean as ActionBean in ExecutionContext, but does 
> not update ExecutionContext's ActionBeanContext.
> When DispatchHelper sets the event name, it sets in in ExecutionContext's 
> ActionBeanContext, but not in ActionBean's ActionBeanContext.
> So we have 2 different events. One in ExecutionContext and one in the 
> ActionBean.
> The Wizard throws an exception because it checks startEvents againts 
> ActionBean's context which is not the event that will be called.
> A possible patch is to update eventName in ActionBean's ActionBeanContext in 
> DispatchHelper's resolveHandler method.
> Path is included in email.
> Christian

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

        

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft 
Defy all challenges. Microsoft(R) Visual Studio 2008. 
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Stripes-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-development

Reply via email to