struts升级到最高版本后遇到的问题。关于actionmessage传递问题。
Struts2升级到最新版本遇到的一些问题
首先是更换对应的jar,如asm、common、ongl、struts等等。更换后发现系统启动不了,按照网上的介绍,先后又更新了slf4j-log4j12-1.6.1.jar和cglib-2.2.2.jar后,起来了,但运行系统报错:NoSuchMethodError ...context.get(Object),修改web.xml,去掉struts-cleanup和FilterDispatcher,换上StrutsPrepareAndExecuteFilter,运行起来了。
仔细检查发现ongl对get和set的验证比原来严格了,比如原来action里有个变量aMap,方法getaMap()和setaMap()原来能用,现在就不能用了,必须改成getAMap()和setAMap().另外ongl原来允许set和get基本类型int,long等,升级后不再允许了,必须改成Integer、Long等对象类型。
另外遇到的一个问题就是原来有个action的result类型是chain,从前一个action将actionMessage带到下一个action,升级后发现带过来的actionMessage是null,google struts2 result chain actionMessage发现有高人遇到过这个问题,粘贴答案如下:
在网上查询N久,未解决。
一说必须使用 chain Result,我就是用的这个啊。
一说必须使用 chain Interceptor,我用的是 defaultStack,应该默认就有。
一说是需要使用 store Interceptor,感觉不对。
后在 ChainInterceptor 的 JavaDoc 中找到
引用
QUOTE:
By default Errors, Field errors and Message aren't copied during chaining, to change the behaviour you can specify the below three constants in struts.properties or struts.xml:
struts.xwork.chaining.copyErrors - set to true to copy Action Errors
struts.xwork.chaining.copyFieldErrors - set to true to copy Field Errors
struts.xwork.chaining.copyMessages - set to true to copy Action Messages
翻译后:
默认情况下,错误,现场的错误和消息都不会被复制在链接过程中,要改变行为,您可以指定在struts.properties或struts.xml中的下面三个常量:
struts.xwork.chaining.copyErrors - 设置为true,复制操作错误
struts.xwork.chaining.copyFieldErrors - 设置为true,复制字段错误
struts.xwork.chaining.copyMessages - 设置为true,复制行动消息
struts升级到最高版本后遇到的问题。关于actionmessage传递问题。的更多相关文章
- 升级了git版本后git clone报ssl错误的解决方法
由于升级了git版本,git clone 的时候报了如下的错误 fatal: unable to access 'https://github.com/open-falcon/falcon-plus. ...
- DEDE升级5.7版本后生成页面空白_解…
今天将DEDECMS V5.6升级到DEDECMS V5.7并升级5.7 SP1后,发现生成首页.栏目.内容页均为空白,没有任何反应,今天发布一个解决方法. 发现每个模板中调用过 Html2Text ...
- 【Finchley】【升级变更】Spring Cloud 升级到Finchley版本后需要注意的地方
Spring Boot 2.x 已经发布了很久,现在 Spring Cloud 也发布了 基于 Spring Boot 2.x 的 Finchley 版本,现在一起为项目做一次整体框架升级. 升级前 ...
- Ionic CLI升级到3版本后2版本工程运行出错.md
1. 问题描述: 最近将Ionic的CLI升级到了最新的版本3.2,升级后在原来Ionic2版本的CLI中创建的工程,通过ionic serve运行报错,错误类似如下: C:\Users\Admin\ ...
- 升级shiro1.6版本后导致附件上传失败,浏览器返回400错误
最新shiro发布了一个漏洞,凡是jar包在1.6版本的都会出现该漏洞,要修复该漏洞只能升级到shiro1.6版本 但是如果项目中url使用了;jsessionid这种方式的话 就会导致上传失败,浏览 ...
- 升级了Springboot版本后项目启动不了了
问题背景 项目上使用的springboot版本是2.1.1.RELEASE,现在因为要接入elasticsearch7.x版本,参考官方文档要求,需要将springboot版本升级到2.5.14. 本 ...
- node 随便升级到最新版本的遭遇
将node 升级到最新版本后,创建一个RN新项目,执行:react-native init AwesomeProject 遇到: error An unexpected error occurred ...
- 升级 Linux 内核版本(编译源代码)
升级内核版本(自己编译源码) 从 linux 官网 https://www.kernel.org/ 下载内核源码 解压 tar -xvf linux-4.16.8.tar.xz cd linux-4. ...
- windows10升级更新1709版本 在桌面和文件夹中点击右键刷新,会引起卡顿反应慢
win10,升级更新,1709,右键,卡机,刷新,反应慢,桌面,文件夹 windows自动升级到1709版本后出现的问题,而之前是没有这种问题的. 最终解决办法:(需要设置注册表) 运行:快捷键Win ...
随机推荐
- changePage() 页面跳转
jQuery.mobile.changePage( to [, options ] ) 从一个页面跳转到另一个页面,使用$.mobile对象的changePage方法来实现.但要使用此方式的时候,要以 ...
- 10.读google测试之道有感
(一)读google测试之道有感.
- css3中webkit-box的用法(平分父元素)
display:box;box-flex是css3新添加的盒子模型属性,它的出现可以解决我们通过N多结构.css实现的布局方式.经典的一个布局应用就是布局的垂直等高.水平均分.按比例划分.目前box- ...
- Visual Studio 2013 的 Browser Link 功能
Visual Studio 2013 的 Browser Link 功能 最近公司弄新项目需要用 MVC,就把 IDE 升级到了 Visual Studio 2013,在开发的时候发现有好多请求一个本 ...
- jquery dialog的关闭事件不触发,触发不了
在网上大部分是: close:function(event,ui){}; 但不管用,不过onClose:function(){};挺好使的,终于找到了
- beanutils获取带参数get方法
public Employee getEmployee(int index) { return new Employee(); } 1.PropertyUtils.getIndex ...
- 云优化的概念、Entity Framework 7.0、简单吞吐量压力测试
云优化的概念.Entity Framework 7.0.简单吞吐量压力测试 继续上一篇<开发 ASP.NET vNext 初步总结(使用Visual Studio 2014 CTP1)>之 ...
- Android 5.0自定义动画
材料设计中的动画对用户的操作给予了反馈,并且在与应用交互时提供了持续的可见性.材料主题提供了一些按钮动画和活动过渡,Android 5.0允许你自定义动画并且可以创建新的动画: Touch Feedb ...
- Vijos:P1001谁拿了最多奖学金
描述 某校的惯例是在每学期的期末考试之后发放奖学金.发放的奖学金共有五种,获取的条件各自不同: 1) 院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1篇以 ...
- 编写简单的hashCode方法
为什么要编写hashCode方法 hashCode在平时不常自己去编写,但是在真正高质量的代码中却是必不可少的. 看看Java中的Object对hashCode方法的描述: 1.返回对象的哈希码,是为 ...