Struts2从版本2.2.1升级至2.3.15.1出现的问题
问题一
原版本Struts2.2.1中的JSP代码如下:
<a class="buttonSelect" href="/manage/machine/uploadFile!uploadOwnerIdentityUI.do?
businessId=${owner.id}&mainInfoId=${mi.id}&businessType=${mi.businessType}
&fieldId=hddProofPicPath&jsFunction=callbackFunc('proof')&width=330&height=445" target="dialog" mask="true" width="450" height="350" rel="uploadify"><span>上传</span></a>
鼠标移到这链接上,看到的链接地址如下:
由于链接地址.do?后面进行了回车换行,所以导致了看到的实际链接地址上.do?后面多了一块空格。
但后台是可以正确获取到businessId这个字段的值的。
版本升级至Struts2.3.15.1后,后台变成了获取不到businessId这个字段的值了。通过调试查看request里面的参数名,发现它是已经把空格和businessId连在一起当作一个参数名了,如下图所示:
解决方法只能是在链接地址.do?后面不进行回车换行了。
问题二
Struts2.2.1版本的时候,使用了Token来防止重复提交,在后台如果验证不通过的话则使用
ActionContext.getContext().getSession().put("xxxx",xxxx);
方式重新把Token的值存储回去,但升级到Struts2.3.15.1版本后,这样不起作用了,需要改成
TokenHelper.setSessionToken("xxxx", xxxx);
这样才行。
Struts2从版本2.2.1升级至2.3.15.1出现的问题的更多相关文章
- 搭建Struts2不同版本jar包不同
struts2的版本比较多,所以在开发的时候特别要注意版本不同所需引入的包是不一样的.否则,会出现各种问题.而且很难找到问题所在. 以下是我遇到的问题总结: 一.当我运用struts2.3.4.1时, ...
- struts2更新版本操作有关事项备注
struts2更新版本操作有关事项备注, 更新主要jar包:struts2-convention-plugin-version,struts2-core-version, struts2-spring ...
- struts2不同版本在核心filter在web.xml中的配置
FilterDispatcher是struts2.0.x到2.1.2版本的核心过滤器.配置如下: <filter> <filter-name>struts2</filte ...
- [.Net Core] - 当 .Net Core 版本由 1.x 升级至 2.x 后,Cookie 使用方式变更
背景 Asp.Net Core 项目升级至 2.x 版本后,Cookie 验证方式需要进行更新. 升级前:.Net Core 1.x Startup.cs public void Configure( ...
- phpnow升级php版本 php-5.2.14-Win32升级至5.3.5
PHPNow自带的PHP版本为5.2.14,而最后一次更新在于2010-9-22.下面来升级PHP5.3.5: 1.下载安装文件: 先下载PHP5.3.5,下载地址:php-5.3.5-Win32-V ...
- struts1、 struts2所有版本jar包下载地址大全
jakarta-struts-1.2.2.tar.gz 30-Aug-2004 18:21 12M jakarta-struts-1.2.2.tar.gz.asc 30-Aug-2 ...
- struts2 最新S2-016-S2-017漏洞通杀struts2所有版本及修复方法
详情查看http://zone.wooyun.org/content/5159 官方漏洞说明 http://struts.apache.org/release/2.3.x/docs/s2-016.ht ...
- 在struts2.5版本中使用DMI遇到问题
struts2.5 为了提升安全性,添加了 allomethod 这么个玩意. 解决方法是在配置文件中添加: <package name="exam" extends=&qu ...
- CentOS5内核版本2.6.18升级至3.6.4 转
http://www.kvm.la/centos5-upgrade-kernel-3-6.html
随机推荐
- 精简DropDownList用法
ViewBag.TypeID = new SelectList(db.TType, "ID", "Name", model.TypeID); @Html.Dro ...
- [Guava源码分析]Objects 和 ComparisonChain:帮助重写Object方法
我的技术博客经常被流氓网站恶意爬取转载.请移步原文:http://www.cnblogs.com/hamhog/p/3874194.html,享受整齐的排版.有效的链接.正确的代码缩进.更好的阅读体验 ...
- 关于IOS9更新的适应与适配
最下面一行为刚刚添加的 iOS9中新增App Transport Security(简称ATS)特性, 主要使到原来请求的时候用到的HTTP,都转向TLS1.2协议进行传输.这也意味着所有的HTTP协 ...
- JPA SQL 的复杂查询createNamedQuery
@NamedNativeQueries({ @NamedNativeQuery( name = "getNativeNutShellInfo", //需要调用的name query ...
- Linux 下安装服务器安全狗
1.网上下载服务器安全狗的软件包 32位和64位 wget http://www.safedog.cn/server_safedog_linux.html/safedog_linux32.tar ...
- 设置datagridview中button按钮的背景颜色
问题:DataGridViewButtonColumn()在datagridview中创建按钮列,如何设置按钮的背景颜色(不是单元格的背景颜色). 回答:可以在dataGridView1_CellPa ...
- [大牛翻译系列]Hadoop(13)MapReduce 性能调优:优化洗牌(shuffle)和排序阶段
6.4.3 优化洗牌(shuffle)和排序阶段 洗牌和排序阶段都很耗费资源.洗牌需要在map和reduce任务之间传输数据,会导致过大的网络消耗.排序和合并操作的消耗也是很显著的.这一节将介绍一系列 ...
- ASP.NET Core 1.0
.NET Core dotnet 命令大全:http://www.cnblogs.com/linezero/p/dotnet.html http://www.cnblogs.com/Wddpct/p/ ...
- js各类共用方法
function GetParameterValueByName(parametername) { var reg = new RegExp("(^|&)" + param ...
- 【WPF学习日记——[DevExpress]】GridControl 行中使用按钮
想到的办法都试了,只有这个能用,不一定是最好的,但却是自己能想到的,记录一下. <dxg:GridColumn Header="操作" Width="134&quo ...