问题描述:
从NutMap中接收参数,跟断点可以看到是String[]类型的参数typeCodes[]。
当typeCodes有2个以上的值的时候(例如:[1,2]),代码不报错;
当typeCodes只有1个值的时候(例如[1]),就报转换错误.
应该怎么解决这个问题?
代码:
if(paramMap.get("typeCodes[]")!=null ){
String[] typeCodes = (String[])paramMap.get("typeCodes[]");
String inStr = CommonUtil.getInStr(typeCodes);
if(!"".equals(inStr)){
...
}
}
报错信息
For the reason: java.lang.String cannot be cast to [Ljava.lang.String;
org.nutz.lang.InvokingException: Fail to invoke [com.shlx.blood.service.business.BagService$$NUTZAOP].queryBagInfo() by args:
{bagCode=, bdCode=, typeCodes[]=1, page=1, rows=15}
For the reason: java.lang.String cannot be cast to [Ljava.lang.String;
at org.nutz.lang.Invoking.invoke(Invoking.java:195)
at org.nutz.lang.Mirror.invoke(Mirror.java:1100)
at com.shlx.blood.service.ComServices.ExcuteServices(ComServices.java:137)
at com.shlx.blood.action.business.BagAction.queryBagInfo(BagAction.java:51)