博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WARN com.opensymphony.xwork2.ognl.OgnlValueStack异常的解决办法[提交按钮使用了图片并设置name属性,对应action无gettersetter]
阅读量:2353 次
发布时间:2019-05-10

本文共 988 字,大约阅读时间需要 3 分钟。

文章来源:http://hi.baidu.com/gpsdreamer/item/544050ed0e00e4d0e1a5d4cd

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

的解决办法

Struts2这个异常是在提交表单的时候发生的,乍一看以为是Struts2类型转换的错误,但是程序中又压根儿没有用到Struts2的类型转换,而且前台页面index.jsp中也没有设置x,y这些参数;且这个错误并不会影响程序的正常运行,找了很久,最后发现是提交按钮的缘故,提交按钮引用的是一个图片,如下:

<input id="submit" type="image" name="ssc" src="asserts/images/5.jpg"/>

由于表单提交中设置了name属性,所以struts2会进行接收相应的值,查找它的set 和 get方法,而action里面没有这个name值的,所以才出现了如上错误。可以这样写:

<input id="submit" type="image"  src="asserts/images/5.jpg" />

将name属性去掉即可。

其实,在struts.xml文件里可以配置"struts.devMode"属性。

当struts.devMode = true时,使用struts在默认配置下对任何提交到action的参数强制需要setter方法,html表单数据中有和action属性匹配不上的参数名时就会提示这样的信息。所以,在开发过程中将这个属性设为true还是很好的,它可以帮我们发现一些可能出现但又被我们忽视的问题,犯的“错误”越多,才能积累很多的经验。

转载地址:http://sfgvb.baihongyu.com/

你可能感兴趣的文章
php中抽象类和接口的概念与区别
查看>>
php抽象类和接口
查看>>
如何在linux CentOS 上安装chrome 谷歌浏览器
查看>>
laravel5 怎么实现事务
查看>>
GitLab安装说明
查看>>
Git查看、删除、重命名远程分支和tag
查看>>
PHP类中的抽象类,抽象方法,abstract
查看>>
PHP接口类interface的正确使用方法
查看>>
Sencha Touch之Hello World
查看>>
Tab Layout 之单个Activity实现
查看>>
Tab Layout 之多个Activity实现
查看>>
FrameLayout之我见
查看>>
个人解读Activity之一
查看>>
实现自定义布局的Notification
查看>>
AlarmManager的学习与实现
查看>>
解读Content Provider之一
查看>>
解读Content Provider之二
查看>>
自定义UI实例
查看>>
推荐一个不错的自定义UI
查看>>
fedora16 设置 gedit软件的默认编码
查看>>