WARN com.opensymphony.xwork2.ognl.OgnlValueStack异常的解决办法
(2012-07-14 10:49:09)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还是很好的,它可以帮我们发现一些可能出现但又被我们忽视的问题,犯的“错误”越多,才能积累很多的经验。
相关推荐
在本文中,我们将探讨将Struts2从旧版本升级到2.5.30的过程中可能遇到的问题及其解决方案。 升级Struts2到2.5.30的主要目标是利用新版本提供的增强功能和安全补丁。Struts2的每个新版本通常会包含对前一版本的兼容...
升级前,检查所有依赖的库和插件,确保它们与新版本的Struts2兼容,因为某些旧的API可能会被弃用或改变。 2. **升级指南**:查阅官方的升级指南,了解详细的步骤和变更。这将帮助你了解从2.3.24到2.5.26的具体迁移...
标签"struts2漏洞"、"struts2升级"和"struts2补丁"进一步强调了这次更新的目的:修复已知的安全漏洞,通过升级到更高版本来提高应用安全性,并应用特定的补丁来解决已知问题。 从压缩包子文件的文件名称列表"struts...
以上步骤概括了从Struts2 2.3.26升级到2.3.34的主要过程。每个项目都有其特定的环境和需求,因此实际操作时可能需要根据具体情况进行调整。遵循这些步骤,可以确保顺利地完成升级,同时享受到新版本带来的改进和优势...
本教程将详细解释如何将Struts2的2.0.xx或2.3.28.1版本升级到更为安全的2.5.12版本。 **1. 漏洞概述** 在Struts2的早期版本中,尤其是2.0.xx和2.3.28.1,存在一个名为CVE-2017-9791的安全漏洞,这是一个远程代码...
通常,Struts2的安全漏洞主要涉及Action、Result、Interceptor等核心组件,或者是OGNL(Object-Graph Navigation Language)表达式中的安全问题。 在Struts2的历史中,有几次著名的漏洞事件,如CVE-2017-5638(S2-...
Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展且易于管理的企业级应用程序。Struts2.2到Struts2.3的升级是一个重要的更新过程,涉及到多个方面的改动和优化,包括性能提升、安全增强以及新特性的引入...
北京时间8月22日13时,Apache官方发布通告公布了Struts2中一个远程代码执行漏洞(cve-2018-11776)。该漏洞可能在两种情况下被触发,第一,当没有为底层xml配置中定义的结果设置namespace 值,并且其上层动作集配置...
为了应对这些高危漏洞,开发者需要尽快将Struts 2框架升级到最新版本。在这个案例中,提供的jar包集合是针对升级到Struts 2.3.32版本的。以下是每个jar包的作用: 1. `freemarker-2.3.23.jar`:FreeMarker是一个...
Struts 2.3.35版本包含了所有必要的jar包,用于将现有的Struts 2应用程序从旧版本升级到这个更安全的版本。这一步通常涉及到替换Web应用中的旧jar文件,以确保所有的功能与最新的安全补丁兼容。 在进行Struts 2框架...
Apache官方已针对该漏洞发布安全公告,ApacheStruts 2.3.5 – 2.3.31版本及2.5 – 2.5.10版本存在远程代码执行漏洞(CNNVD-201703-152 ,CVE-2017-5638)。该漏洞是由于上传功能的异常处理函数没有正确处理用户输入...
struts2 升级 2.3.15.1 struts2-jasperreports-plugin-2.3.15.1.jar
通过上述步骤,您可以有效地将Struts2从2.3.15.1版本升级到2.3.32版本,从而避免了S2-045和S2-046等已知的安全漏洞带来的威胁。此外,定期关注并及时更新所使用的开源库版本,对于保障系统的安全稳定运行至关重要。
9. **社区支持**:Struts2拥有活跃的社区,升级到新版本意味着可以获得最新的社区支持和技术解答,帮助解决可能出现的问题。 在升级过程中,你将需要用到"Struts2 2.3.32相关jar包",这个压缩包包含了升级所需的...
4. **依赖管理**:升级过程中,需要更新所有相关的Struts2依赖项,如struts2-core、struts2-convention-plugin等。同时,确保其他依赖库(如Spring、Hibernate等)与新版本的Struts2兼容。 5. **拦截器链调整**:...
Struts 2的升级不仅涉及jar包的替换,还需要关注其版本带来的新特性、改进和已知问题,以便充分利用新版本的优势并避免潜在风险。对于开发者来说,了解每个版本的变更日志和官方文档是非常重要的,这能帮助他们更好...
然而,Struts2 中存在着一些漏洞,例如 S2-045 漏洞,该漏洞可能会导致严重的安全问题。今天,我们将讨论如何修复 Struts2 漏洞 S2-045 而不升级 jar 版本。 漏洞概述 S2-045 漏洞是一个严重的安全漏洞,影响 ...
2. **依赖库更新**:升级时,需要检查并更新所有与Struts2相关的依赖库,如OGNL(Object-Graph Navigation Language),因为它们可能与新版本的Struts2存在兼容性问题。 3. **配置更改**:Struts2的配置文件`struts...
struts2-convention-plugin-2.3.32.jar struts2-core-2.3.32.jar struts2-spring-plugin-2.3.32.jar xwork-core-2.3.32.jar 2、删除上面原有的低版本jar 3、修改 WEB-INF\classes 目录下struts.xml 文件,...
Struts2作为一款流行的Java Web框架,极大地简化了MVC应用的开发。在Struts2中,自定义标签是提高代码可读性和可维护性的重要工具。本文将深入探讨Struts2自定义标签的实现机制、优点以及如何在实际项目中进行应用。...