[
https://issues.apache.org/jira/browse/WW-4288?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Lukasz Lenart updated WW-4288:
------------------------------
Description:
Have a stack like:
{code:xml}
...
<interceptor-ref name="params">
<interceptor-ref name="staticParams"/>
...
<interceptor-ref name="conversionError"/>
{code}
If have type conversion errors in params, they aren't seen by the
conversionError interceptor.
It looks like this in StaticParametersInterceptor:
{code:java}
if (clearableStack && (stack.getContext() != null) && (newStack.getContext() !=
null))
stack.getContext().put(ActionContext.CONVERSION_ERRORS,
newStack.getContext().get(ActionContext.CONVERSION_ERRORS));
{code}
ends up just overwriting the old value of ActionContext.CONVERSION_ERRORS
rather than merging.
was:
Have a stack like:
...
<interceptor-ref name="params">
<interceptor-ref name="staticParams"/>
...
<interceptor-ref name="conversionError"/>
If have type conversion errors in params, they aren't seen by the
conversionError interceptor.
It looks like this in StaticParametersInterceptor:
{code:java}
if (clearableStack && (stack.getContext() != null) &&
(newStack.getContext() != null))
stack.getContext().put(ActionContext.CONVERSION_ERRORS,
newStack.getContext().get(ActionContext.CONVERSION_ERRORS));
{code}
ends up just overwriting the old value of ActionContext.CONVERSION_ERRORS
rather than merging.
> staticParams interceptor overwrites params conversion errors
> ------------------------------------------------------------
>
> Key: WW-4288
> URL: https://issues.apache.org/jira/browse/WW-4288
> Project: Struts 2
> Issue Type: Bug
> Components: Core Interceptors
> Affects Versions: 2.3.15.3
> Reporter: Jasper Rosenberg
> Fix For: 2.3.18
>
>
> Have a stack like:
> {code:xml}
> ...
> <interceptor-ref name="params">
> <interceptor-ref name="staticParams"/>
> ...
> <interceptor-ref name="conversionError"/>
> {code}
> If have type conversion errors in params, they aren't seen by the
> conversionError interceptor.
> It looks like this in StaticParametersInterceptor:
> {code:java}
> if (clearableStack && (stack.getContext() != null) && (newStack.getContext()
> != null))
> stack.getContext().put(ActionContext.CONVERSION_ERRORS,
> newStack.getContext().get(ActionContext.CONVERSION_ERRORS));
> {code}
> ends up just overwriting the old value of ActionContext.CONVERSION_ERRORS
> rather than merging.
--
This message was sent by Atlassian JIRA
(v6.2#6252)