ERROR [com.opensymphony.xwork2.conversion.impl.InstantiatingNullHandler] - Could not create and/or set value back on to object
引用
struts2 类型转换异常时错误信息屏蔽
2011-05-24 16:29
类型转换异常导致转换方法没有正常返回,fieldError 中添加了相应的错误记录,系统打印出改异常,级别为warm。我认为不算是struts2的bug. 转换异常抛出警告很正常。如想屏蔽可用logger4j 配置级别到error 即可
ognl.MethodFailedException: Method "setLoc" failed for object tjx.HelloWorld@651e95 [java.lang.NoSuchMethodException: tjx.HelloWorld.setLoc([Ljava.lang.String;)]
at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1285)
at ognl.OgnlRuntime.setMethodValue(OgnlRuntime.java:1474)
at ognl.ObjectPropertyAccessor.setPossibleProperty(ObjectPropertyAccessor.java:85)
at ognl.ObjectPropertyAccessor.setProperty(ObjectPropertyAccessor.java:162)
at com.opensymphony.xwork2.ognl.accessor.ObjectAccessor.setProperty(ObjectAccessor.java:27)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2245)
at com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor.setProperty(CompoundRootAccessor.java:77)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2245)
at ognl.ASTProperty.setValueBody(ASTProperty.java:127)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
at ognl.SimpleNode.setValue(SimpleNode.java:301)
at ognl.Ognl.setValue(Ognl.java:737)
另一种解决方式,自己捕获异常,并在异常处理代码中添加filderror:
if (context != null && (Boolean.TRUE.equals(context.get(XWorkConverter.REPORT_CONVERSION_ERRORS)))) {
String realProperty = "loc"; //这要转换属性名称
String fullName = (String) context.get(XWorkConverter.CONVERSION_PROPERTY_FULLNAME);
if (fullName != null) {
realProperty = fullName;
}
Map<String, Object> conversionErrors = (Map<String, Object>) context.get(ActionContext.CONVERSION_ERRORS);
if (conversionErrors == null) {
conversionErrors = new HashMap<String, Object>();
context.put(ActionContext.CONVERSION_ERRORS, conversionErrors);
}
conversionErrors.put(realProperty, value);
}
return null;
引用
struts2.x 严重: Could not create and/or set value back on to object
2010-03-17 09:02
在用struts2.1提交表单时发生以下错误:
2010-3-17 8:51:08 com.opensymphony.xwork2.util.logging.jdk.JdkLogger error
严重: Could not create and/or set value back on to object
java.lang.InstantiationException: com.model.GuestInfo
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
....
原因:经过分析,是因为在表单提交的时候,action并没有创建表单对应的实例。
因为用人在写表单对应的类时,写了一个带有参数的构造方法,而在action中只是定义了这个类,没有实现。
解决方法:方法1、在表单对应的类中,再建个什么也不做的构造方法,即不带有参数和方法的构造方法。
方法 2、在action中,new出表单对应的类。
本人用第一种方法。
分享到:
相关推荐
struts2-Annotation
警告: 本工具为漏洞自查工具,请勿非法攻击他人网站! Struts2漏洞检查工具2017版 V2.0 ...jakatar处理复杂数据类型时,异常处理不当,导致OGNL代码执行,通过在请求的Content-Type头中构造OGNL表达式来执行Java代码。
7.2.3 Struts2全局异常提示定义属性文件使用介绍 147 第8章 Struts2输入校验 149 8.1 validate输入校验方式再谈 149 8.1.1 复习validate方法进行输入校验 149 8.1.2 validateXXX方法进行输入校验 153 8.2 利用配置...
十二、总结 本教程对struts2的基本知识进行了一些说明,关于struts2的更多详细内容应参看struts2的官方文档及提供的app实例。 下面对struts2的基本执行流程作一简要说明,此流程说明可以结合官方提供的struts2结构图...
增加安恒信息研究员nike.zheng发现的S2-045,jakatar处理复杂数据类型时,异常处理不当,导致OGNL代码执行,通过在请求的Content-Type头中构造OGNL表达式来执行Java代码。http://struts.apache.org/docs/s2-045.html...
增加安恒信息研究员nike.zheng发现的S2-045,jakatar处理复杂数据类型时,异常处理不当,导致OGNL代码执行,通过在请求的Content-Type头中构造OGNL表达式来执行Java代码。http://struts.apache.org/docs/s2-045.html...
01 Struts2-Action 5 一、 Struts作用: 5 二、 搭建Struts2的运行环境: 5 三、 Namespace 6 四、 标签 6 五、 Action 6 六、 路径问题的说明 8 七、 Action的动态调用方法 8 八、 Action通配符(wildcard)的配置 9 ...
本书是广受赞誉的Struts 2优秀教程,它全面而深入地阐述了Struts 2的各个特性,并指导开发人员如何根据遇到的问题对症下药,选择使用最合适的特性。作者处处从实战出发,在丰富的示例中直观地探讨了许多实用的技术,...
struts2 漏洞利用工具
增加安恒信息研究员nike.zheng发现的S2-045,jakatar处理复杂数据类型时,异常处理不当,导致OGNL代码执行,通过在请求的Content-Type头中构造OGNL表达式来执行Java代码。http://struts.apache.org/docs/s2-045.html...
01 Struts2-Action 5 一、 Struts作用: 5 二、 搭建Struts2的运行环境: 5 三、 Namespace 6 四、 标签 6 五、 Action 6 六、 路径问题的说明 8 七、 Action的动态调用方法 8 八、 Action通配符(wildcard)的配置 9 ...
48. struts2-spring-plugin-2.0.11.2.jar 49. //struts2必须 50. xwork-2.0.5.jar 数据库设计(使用MySql数据库): Java代码 1. create table user 2. ( 3. id varchar(32) not null, 4. userName ...
struts2利用工具,获取执行权限,已尝试可以使用。
增加安恒信息研究员nike.zheng发现的S2-045,jakatar处理复杂数据类型时,异常处理不当,导致OGNL代码执行,通过在请求的Content-Type头中构造OGNL表达式来执行Java代码。http://struts.apache.org/docs/s2-045.html...
书中介绍了如何利用Struts 2 来解决Web 应用开发中的常见问题,同时还深入浅出地探讨了许多能帮助程序员编写Struts 2 应用程序的技巧,如管理页面导航活动、输入验证、国际化和本地化、对Ajax 的支持,等等。...
2.commons-io.jar(commons项目(commons项目就是java中一些常用的公共的组件)的io子项目,是处理异常的) 3.freemarker-2.3.15.jar(支持freemarker的,在webwork中也有) 4.javassist.jar(一个开源的分析、编辑...
2.1.9 struts 2的异常处理 52 2.2 struts 2配置精要 54 2.2.1 web.xml中struts 2的配置实现 54 2.2.2 struts 2属性配置文件struts.properties详解 55 2.2.3 struts 2核心配置文件struts.xml详解 57 2.3 struts ...