You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Nils-Helge Garli (JIRA)" <ji...@apache.org> on 2009/03/27 10:54:02 UTC

[jira] Commented: (WW-2987) Validation messages do not get displayed using a redirectAction as the input

    [ https://issues.apache.org/struts/browse/WW-2987?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45781#action_45781 ] 

Nils-Helge Garli commented on WW-2987:
--------------------------------------

After looking at the code again, and tracing some history, I have to correct myself. If you're using a redirectAction, you should use the message store interceptor, just as you should be doing in a regular web app. It's only when you're not using the redirectAction the messages are automatically copied to the next request. 

> Validation messages do not get displayed using a redirectAction as the input
> ----------------------------------------------------------------------------
>
>                 Key: WW-2987
>                 URL: https://issues.apache.org/struts/browse/WW-2987
>             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, ItemAction.java, 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" method="itemEdit">
>                                                 <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.