论坛首页 入门技术论坛

struts2疑难之---不太常见的值栈异常的处理

浏览 2217 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (7) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-12-30  
遇到一个错误
基本情况是这样:
我有几个jsp页面,在一个jsp中有include action,当然这个action 的result是另外的某个jsp,然后这个被include后显示的jsp里面还存在 include action

Action1 result jsp1  , result type=chain, jsp1 include Action2
Action2 result jsp2 ,  result type=chain, jsp2 include Action3 
Action3 result jsp3 ,  result type=chain

出现了struts2值栈异常:
排查后,发现Action2和Action3 里面有一个相同的属性,而且类型不同
这时出现了exception

分析后,应该是这两个Action,因为是同属在一个HTTP过程中request-->response,那么在服务端共享一个ActionContextMap,也就是说Action2,Action3使用的值盏是同一个,但是出现了属性名相同,类型不同的情况,出问题了

修改参数名称后,解决了这个问题。

希望                    
   发表时间:2009-12-30  
希望对帮困惑中的人有所帮助。
0 请登录后投票
   发表时间:2009-12-30  
既然都struts2了。。好歹也要体现MVC吧,jsp引那么多页面即使不冲突,看起来也会不爽
0 请登录后投票
   发表时间:2009-12-31  
很少见 jsp include action去,而且,chain 实现本来就不提倡用,以前用webwork的时候就 问过,作者说尽量不要用chaintype
0 请登录后投票
   发表时间:2010-01-01  
用<s:action>标签
0 请登录后投票
   发表时间:2010-01-02  
kjj 写道
很少见 jsp include action去,而且,chain 实现本来就不提倡用,以前用webwork的时候就 问过,作者说尽量不要用chaintype


恩,如果是redirect,应该不会出这样的异常
0 请登录后投票
   发表时间:2010-01-02  
sw1982 写道
既然都struts2了。。好歹也要体现MVC吧,jsp引那么多页面即使不冲突,看起来也会不爽

哈哈,include action 不影响对MVC的理解

因为是个网站,所以在很多page页有很多一样的公共页面,我想在这里重用组件是第一选择
0 请登录后投票
   发表时间:2010-01-02  
既然用了struts2的话

为什么不用sitemesh呢
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics