Jim deVos created WW-4618:
-----------------------------
Summary: 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
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)