Struts2 java.lang.NoSuchMethodException

时间:2011-08-19 12:33:19

标签: exception struts2

2 个答案:

答案 0 :(得分:7)

posted this same answer之前提到了另一个问题,但它也可能与这个问题相关:

NoSuchMethodException ...([Ljava.lang.String;)]问题可能是由HTTP请求中具有相同名称的多个属性引起的。

如果具有相同名称的多个属性的情况是合法的,则可以通过将setId(int id)更改为setId(String [] idArray)并将每个数组成员字符串解析为整数来处理多个id值。

确保动作类中只有一个setId方法(setId(String [] idArray))。如果有多个方法具有相同的名称但参数类型不同,那么某些版本的struts / ognl(ognl 3.0.4?)可能会混淆。

例如:

public void setId(String[] idArray) {
    for (String idString : idArray) {
       int id = Integer.parseInt(idString);
       ... handle different id values somehow ...
    }
}

答案 1 :(得分:3)

<select>返回字符串值,您尝试将该值分配给整数变量table

table声明为String(使用getter / setter),如果要使用其整数值,则使用parseInt()方法

 integerValue = Integer.parseInt(table)