struts-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dean Pullen (JIRA)" <>
Subject [jira] Commented: (WW-2987) Validation messages do not get displayed using a redirectAction as the input
Date Tue, 19 May 2009 13:38:43 GMT


Dean Pullen commented on WW-2987:

This is still an open issue. Though you can retrieve the action messages using the message
store interceptor, it will merely forward the input phase straight to the input redirectAction's
JSP, not through it's assigned method.
This means you can not repopulate a form that has had properties lost due to the redirect.


Within the example XML file we have this redirectAction input:

<result type="redirectAction" name="input">
<param name="actionName">ItemViewForStore</param>

This means the input should go to the 'ItemViewForStore' action. It does. But it uses ItemViewForStore's
mapping of 'input' which is a JSP, and although it will execute the prepare method of the
ItemViewForStore action it will not execute the execute method.

> Validation messages do not get displayed using a redirectAction as the input
> ----------------------------------------------------------------------------
>                 Key: WW-2987
>                 URL:
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - Portlet
>    Affects Versions: 2.1.6
>         Environment: JBoss Portal 2.7.1
>            Reporter: Dean Pullen
>         Attachments: item.jsp,, struts-test.xml
> This was originally posted to the mailing list without being solved.
> It seems we're correctly directed back to the input when Validation isn't passed, but
we cannot pick up the error messages using the usual tags:
> <s:actionerror />
> <s:fielderror />
> We're utilising the portletDefaultStack and our Portlet package is extending struts-portlet-default.
Our package has no name-space set.
> For example this is the view, which is the input of the edit action:
>                                <action name="ItemView" class="com.msp.portlets.ItemAction">
>                                                 <interceptor-ref name="portletDefaultStack"/>
>                                                 <result>/WEB-INF/jsp/welcome/admin/item.jsp</result>
>                                 </action>            
> This is the edit action:
>                                <action name="ItemEdit" class="com.msp.portlets. ItemAction"
>                                                 <interceptor-ref name="portletDefaultStack"/>
>                                                 <result type="redirectAction" name="success">
>                                                                 <param name="actionName">ItemView</param>
>                                                 </result>
>                                                 <result type="redirectAction" name="input">

>                                                                 <param name="actionName">
ItemView </param>
>                                                  </result>
>                                 </action>
> This works perfectly if the redirectAction input is replaced with a standard JSP forward,
and the validation errors are shown to the user.
> Utilising validation XML instead of annotations produces the same problem - redirectAction
does not work, JSP does.
> Utilising the messageStoreInterceptor does not help.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message