sturt2解决 Error setting expression 'XXX' with value '[Ljava.lang.String;@1dad8

来源:互联网 发布:mac双系统怎么切换 编辑:程序博客网 时间:2024/06/07 23:00

之前写了个struts2的例子,action什么的都没有变化,可是就报错

public class UserAction extends ActionSupport implements SessionAware{private Map session;private User user;public String login(){String result;        System.out.println("login-----"+user.getUsername());    UserHibernateDaoImpl userDao=new UserHibernateDaoImpl();    User loginUser=userDao.login(user.getUsername(),user.getPassword());    userDao.closeSession();    if(loginUser==null){    result=LOGIN;    }else{        session.put("user", loginUser);        result=SUCCESS;    }    return result;    }    public void setSession(Map session) {this.session = session;} public void setUser(User user) {this.user = user;}    }
调试之后发现时user为null有两种可能出现这样的问题 

第一种可能:
struts2中表单提交按钮:
<input type="Submit" name="Submit" value=" 查 询 " />
这样会报题目的错误.其实把submit的name属性删掉或者
<input type="button" name="Submit" value=" 查 询 " onclick="document.form.submit();"/>
都是可以解决的,估计凡是在struts2中没有定义getter,setter方法的form中的input都要被抛出异常
第二种可能
原来的pojo类中重写了构造方法,却没有提供默认的空构造函数。
加上public Book(){};即可。
我就是第二种情况。