今天用struts2时遇到了这么个问题:
WARNING: Error setting expression 'XXX' with value '[Ljava.lang.String;@28da27'
ognl.MethodFailedException: Method "setXXX" failed for object
....
Caused by: java.lang.NoSuchMethodException: XXX.action.XXXAction.setXXX([Ljava.lang.String;)
at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1206)
... 63 more
/-- Encapsulated exception ------------\
at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1206)
... 63 more
/-- Encapsulated exception ------------\
- 简单描述一下问题,jsp中写了几个想输入int类型的框标签,联合查询嘛;只要表单没有全部输入,就会报上述错误。
- 仔细想了一下,struts2帮咱们转型这是一定的,可是你若是不填写其中一个表单的话,那就是说action其中一个属性对应的值是"",就是空字符串。
- 这样的话,struts2当然就无法帮你转成你想转成的的int或者其他非String类型了。
- 解决这个问题的方法...,要么都输入,要么有默认值,要么选择其他标签。