各位兄弟大家好,小第陷进一个STRUT升级的大坑里面,拔了一个月都没有拔出来。
以前系统用的是 strut 2.0.12,后来因为安全问题,升级到 strut 2.3.32。升级过程非常坎坷,后来是成功了,把一切该替换的文件都替换了,包括以下文件
本来测试的挺好,没有异常,上线了。后来客户举报说某些网页修改资料提交显示成功,但是实际上并非如此,提交的内容根本没有入库。于是debug了一下,发现了一个升级以前没有的问题,JSON传递到后台以后,次级 list 为 NULL 空的情况。下面是说明。JSON 结构体如下
其他都不是问题,可以正常传值。主要是画圈部分,这个次级LIST,每次过来都是 NULL,但是根据Firebug的报告,这个在浏览器端是肯定有值出来的
然后去到后台,无缘无故就变成 NULL 了
我肯定升级以前是不会有这个问题的,系统已经用了很多年了,从来没有人举报过。这次上线不久就被举报这个问题。而且很隐蔽,在次级 LIST 出现,除了这个次级 LIST,其他部分传值都是正常的。以为是 JQUERY 的问题,把它升级到1.12.4,结果还是一样,下面是ajax片段
其他部分传值都是OK的,就是次级的LIST 全部是NULL。一筹莫展了,后悔用strut了,以前都觉得挺好,后来突然爆出这么严重的安全漏洞,问题是升级非常伤筋动骨,很多不兼容问题,好不容易完事现在又进来这个死胡同,哎呀吗,悲剧啊,大船开了这么多年,想掉头换船都难啊.......
拜托各位兄弟了