You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Lukasz Lenart (JIRA)" <ji...@apache.org> on 2016/03/24 20:42:25 UTC

[jira] [Updated] (WW-4618) MessageStorePreResultListener doesn't store messages for 3rd-party RedirectResult subclasses

     [ https://issues.apache.org/jira/browse/WW-4618?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Lukasz Lenart updated WW-4618:
------------------------------
    Fix Version/s: 2.3.29

> MessageStorePreResultListener doesn't store messages for 3rd-party RedirectResult subclasses 
> ---------------------------------------------------------------------------------------------
>
>                 Key: WW-4618
>                 URL: https://issues.apache.org/jira/browse/WW-4618
>             Project: Struts 2
>          Issue Type: Bug
>    Affects Versions: 2.3.28
>            Reporter: Jim deVos
>             Fix For: 2.3.29
>
>
> My team uses a custom subclass of ServletRedirectResult, e.g. "org.tdar.struts.ServletRedirectResult". After updating to 2.3.8 our messages no longer survive a redirect.  I believe the problem lies with this section of [MessageStorePreResultListener|https://git-wip-us.apache.org/repos/asf?p=struts.git;a=blob;f=core/src/main/java/org/apache/struts2/interceptor/MessageStorePreResultListener.java;h=60fcffe2116f16503ba6540ff9f69b25dac173f1;hb=8852618]: 
> {code}
> if (resultConfig != null) {
>     isRedirect = ServletRedirectResult.class.getName().equals(resultConfig.getClassName())
>             || ServletActionRedirectResult.class.getName().equals(resultConfig.getClassName());
> }
> {code}
> Per the discussion in WW-4605,  the following change could likely resolve the issue:
> {code}
> if (resultConfig != null) {
>     isRedirect = ServletRedirectResult.class.isAssignableFrom(Class.forName(resultConfig.getClassName()));
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)