也许是基本得很的问题,但却是很多朋友没有弄懂弄明白的问题,我也是在查了Servlet与Struts才找到问题的解决方法。
问题:
在Action中使用request.setAttribute("Name", Value)的方式设置属性,在通过return mapping.findForward("Forwards")方式跳转,但在对应的JSP页面中无得取得传过来的属性值。
解决:
我们可以在新建Action时,在选择Forwards时,不要选择“Redirect”,或者在struts-config.xml配置文件中,将对应<Action>标签中的<Forward>标签中,设置“Redirect”值为false即可。
原因:
由于request生命周期只在一次请求范围内有效的,所以如果使用了Reditect设置的话,就会将请求重定向,也就是破坏了request生命周期,重新产生一次请求,那么request.setAttribute设置过的属性被清空了。
发表于 @ 2007年09月14日 08:54:00 | 评论( loading... ) | 举报| 收藏