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)