日期:2014-05-18  浏览次数:20677 次

jsp中提交表单时的问题
我在JSP中用JSP标签<jsp:useBean id="morningPaperBean" class="beans.MorningPaperBean" scope="request"/>
定义了一个bean。然后单击提交后,由一个servlet来处理这个请求。

但有一个问题,我在servlet里用request.getAttribute(bean名字)得不到上面定义的bean,而我把bean的scope改成了session后,在servlet中就可以用session来得到bean,请问这是为什么呢?




------解决方案--------------------
难道你用到了response.sendRedirect("/xx/xx.do")??
------解决方案--------------------
request存活于当前请求,当你的jsp提交表单时就是发起了另一个新的请求,所以得不到上一次请求request里的值
session存活于当前用户会话,只要是当前用户会话所有的请求都能共享session里的值[align=left][/align]
------解决方案--------------------
支持2楼的说法
request 是请求范围内有效 session 是在关闭或在这个session失效之前有效