You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Saqib Chaudhary (JIRA)" <ji...@apache.org> on 2009/04/02 16:14:06 UTC
[jira] Issue Comment Edited: (WW-1960) action tag violates
ParameterAware contract
[ https://issues.apache.org/struts/browse/WW-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45830#action_45830 ]
Saqib Chaudhary edited comment on WW-1960 at 4/2/09 7:12 AM:
-------------------------------------------------------------
In case we are passing application objects to the action tag. This fix in ActionComponent breaks by converting our application object to a string (toString method). Making Ognl throw "no such method setMyObject([Ljava.lang.String;)" exception.
Works well for Integer for example because the toString method of Integer is the value of that Integer. Is this the desired result??
was (Author: saqib):
In case we are passing application objects to the action tag. This fix in ActionComponent breaks but converting our application object to a string (toString method). Works well for Integer for example because the toString method of Integer is the value of that Integer.
> 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.