[
https://issues.apache.org/struts/browse/WW-3120?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Wes Wannemacher closed WW-3120.
-------------------------------
Resolution: Won't Fix
Assignee: Wes Wannemacher
To solve your problem, what you'd have to do is remove the checkbox interceptor
from the interceptor stack that is running against the affected action.
I'm somewhat against making an attempt to fix this for 2.1.7 since it will
likely affect compatibility, and you can work around this by removing checkbox
from the interceptor stack. I am going to close this as "Won't Fix," but you
can reopen if you really think we need to code around this. To fix this, I
would likely make the behavior configurable, but the default would be to
continue acting the way it does now. So, even with a fix, you are going to be
forced to mess with your interceptor stack configuration.
> <s: checkbox> returns boolean type to ParameterAware
> ----------------------------------------------------
>
> Key: WW-3120
> URL: https://issues.apache.org/struts/browse/WW-3120
> Project: Struts 2
> Issue Type: Bug
> Components: Core Interceptors
> Affects Versions: 2.0.11.1
> Environment: Windows XP SP3, IE6 & Firefox 3.0.10, Apache Tomcat
> 5.5.17, Java 1.5.0_15
> Reporter: Jeff Kelley
> Assignee: Wes Wannemacher
> Fix For: 2.1.7
>
>
> My action class is implementing ParameterAware so I can get all the
> name/value pairs on the page. When using the <s:checkbox> tag the value is a
> boolean in the ParameterMap, not a String[].
> JSP:
> <s:checkbox name="MCN" fieldValue="true" theme="simple"/>
> Action Class:
> public class Upload extends ActionSupport implements SessionAware,
> ParameterAware
> {
> private Map<String, String[]> parameterMap;
> public String execute()
> {
> String[] stuff;
> stuff = parameterMap.get("MCN");
> return SUCCESS;
> }
> public void setParameters(Map paramMap)
> {
> parameterMap = paramMap;
> }
> }
> When the execute() method runs I get a class cast exception on 'stuff' since
> it cannot cast from a boolean to a String[].
> When I debug the remote JVM with Eclipse 3.4 I get the following in the
> parameterMap : {password=[Ljava.lang.String;@1e6ee98,
> struts.token.name=[Ljava.lang.String;@3a3e21, MCN=false,
> struts.token=[Ljava.lang.String;@9ac272, uID=[Ljava.lang.String;@1c519e2}.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.