作过户管理流程时,提交表单后控制台显示如下错误 :

WARN com.opensymphony.xwork2.ognl. OgnlValueStack:60 - Error setting expression 'sfjmyh.zdyx6' with value '[Ljava.lang.String;@28d320d6' 
ognl.OgnlException: target is null for setProperty(null, "sfjmyh.zdyx6", [Ljava.lang.String;@28d320d6) 

bug说明文档里显示如下问题:

过户审核交互异常,后台报错如下图

OgnlValueStack:49 - Error setting expression 'sfjmyh.zdyx6' with value '[Ljava.lang.String;@28d320d6'-LMLPHP

出现这个异常是因为在数据库中字段为number类型的值给赋予了null

报错原因:

这个异常是在页面提交表单的时候发生的,乍一看以为是Struts2类型转换的错误,但是程序中又压根儿没有用到Struts2的类型转换。

<input name="sfjmyh.zdyx6" id="userCard" value='${sfjmyh.zdyx6}'/> 

如上面的标签中写的这样,提交表单时会将name为 sfjmyh.zdyx6 属性提交到对应action上,而对应的action类会进行接收相应的值,查找它的set 和 get方法,如果在对应的action类里面没有对应 sfjmyh.zdyx6 这个属性,就会出现如上错误。

解决方法:

1.在对应action类里创建sfjmyh.zdyx6这个属性,生成set,get方法 
 2.第二种方法是如果觉得这个属性没有存在的必要,但是又必须用到id这个取得这个值,可以将name属性去掉,例如

<input id="userCard" value='${sfjmyh.zdyx6}'/> 
05-11 11:11