[
https://issues.apache.org/struts/browse/WW-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_41433
]
David Mansfield commented on WW-1960:
-------------------------------------
I had to work around the the problem with some pretty nasting
o.getClass().isArray() and some casting. this king of ugliness would need to
be added to any action that uses the parameters map if it wants to be safe
against future use of the s:action tag. I could attempt a fix but I'm not sure
what the workflow for doing that would be.
> action tag violates ParameterAware contract
> -------------------------------------------
>
> Key: WW-1960
> URL: https://issues.apache.org/struts/browse/WW-1960
> Project: Struts 2
> Issue Type: Bug
> Components: Actions
> Affects Versions: 2.0.6
> Environment: linux,jdk1.5,tomcat5.5
> Reporter: David Mansfield
> Priority: Minor
>
> the javadoc for ParameterAware states that the values of the map are all
> java.lang.String[], in other words it is a Map<String,String[]>. Indeed,
> when hitting an action via a 'genuine' http request, this is true. However,
> when hitting the action via the action tag, the values in the map are String,
> not String[]. The bug appears to be possibly line 177 in ActionComponent:
> 176: if (parameters != null) {
> 177: newParams.putAll(parameters);
> 178: }
> The parameters of the component are Map<String,String> and therefore cannot
> be combined directly into the ActionContext.getParameters map.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.