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

之前写了个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=" 查 询 " οnclick="document.form.submit();"/>
都是可以解决的,估计凡是在struts2中没有定义getter,setter方法的form中的input都要被抛出异常
第二种可能
原来的pojo类中重写了构造方法,却没有提供默认的空构造函数。
加上public Book(){};即可。
我就是第二种情况。



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值