You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Greg Huber (JIRA)" <ji...@apache.org> on 2016/03/24 08:55:25 UTC
[jira] [Comment Edited] (WW-4605) Refactor MessageStoreInterceptor
and use PreResultListener to store messages
[ https://issues.apache.org/jira/browse/WW-4605?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15209924#comment-15209924 ]
Greg Huber edited comment on WW-4605 at 3/24/16 7:55 AM:
---------------------------------------------------------
The interceptor logic has changed, now need to get the isRedirect from the invocation, not from invocation.getResult().
isRedirect = ServletRedirectResult.class.getName().equals(resultConfig.getClassName());
Will check the isAssignableFrom though.
######
{code:java}
Map<String, ResultConfig> results = null;
ResultConfig resultConfig = null;
try {
results = invocation.getProxy().getConfig().getResults();
resultConfig = results.get(resultCode);
} catch (NullPointerException e) {
LOG.debug("Got NPE trying to read result configuration for resultCode [{}]", resultCode);
}
boolean isRedirect = false;
try {
// isRedirect = invocation.getResult() instanceof ServletRedirectResult;
isRedirect = ServletRedirectResult.class.getName().equals(resultConfig.getClassName());
} catch (Exception e) {
LOG.warn("Cannot read result configuration!", e);
}
{code}
was (Author: gregh99):
The interceptor logic has changed, now need to get the isRedirect from the invocation, not from invocation.getResult().
isRedirect = ServletRedirectResult.class.getName().equals(resultConfig.getClassName());
######
{code:java}
Map<String, ResultConfig> results = null;
ResultConfig resultConfig = null;
try {
results = invocation.getProxy().getConfig().getResults();
resultConfig = results.get(resultCode);
} catch (NullPointerException e) {
LOG.debug("Got NPE trying to read result configuration for resultCode [{}]", resultCode);
}
boolean isRedirect = false;
try {
// isRedirect = invocation.getResult() instanceof ServletRedirectResult;
isRedirect = ServletRedirectResult.class.getName().equals(resultConfig.getClassName());
} catch (Exception e) {
LOG.warn("Cannot read result configuration!", e);
}
{code}
> Refactor MessageStoreInterceptor and use PreResultListener to store messages
> ----------------------------------------------------------------------------
>
> Key: WW-4605
> URL: https://issues.apache.org/jira/browse/WW-4605
> Project: Struts 2
> Issue Type: Improvement
> Components: Core Interceptors
> Affects Versions: 2.3.24
> Reporter: Lukasz Lenart
> Assignee: Lukasz Lenart
> Fix For: 2.3.28, 2.5
>
>
> See WW-4600 as this issue is similar, when response was already comitted (redirect was send, JSP was rendered), logic in {{after}} method won't work as it isn't possible to modify session when response was comitted.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)