[ https://issues.apache.org/struts/browse/WW-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45819#action_45819 ]
Martin Gainty commented on WW-1960: ----------------------------------- we can satisfy the upcast for 2nd parameter for Map.put to (upcast to Object) with List<String> var = new ArrayList<String>(); String[] AlotOfString={"String1","String2"}; for (String str : AlotOfStrings) { val.add(str); } params.put(key,(Object)var); //cast of List<String> to Object works.. //reference for HashMap put method available at http://www.exciton.cs.rice.edu/javadocs/docs/api/java/util/HashMap.html // Object put(Object key, Object value) > action tag violates ParameterAware contract > ------------------------------------------- > > Key: WW-1960 > URL: https://issues.apache.org/struts/browse/WW-1960 > Project: Struts 2 > Issue Type: Bug > Components: Core Actions > Affects Versions: 2.0.6, 2.0.7, 2.0.8, 2.0.9, 2.0.10 > Environment: linux,jdk1.5,tomcat5.5 > Reporter: David Mansfield > Assignee: Don Brown > Priority: Minor > Fix For: 2.1.0 > > > 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.