首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于MVC请求的数据共享失败,基于会话的数据共享成功。

基于MVC请求的数据共享失败,基于会话的数据共享成功。
EN

Stack Overflow用户
提问于 2014-09-28 23:12:04
回答 1查看 136关注 0票数 1

我的jsp页面可以使用以下内容访问bean:

代码语言:javascript
复制
<jsp:useBean id="myBean" 
   type="myPackage.beans.MyBean" 
   scope="session" />

如果我将作用域更改为“请求”,tomcat抛出一个异常: javax.servlet.ServletException: java.lang.InstantiationException: bean myBean,不在作用域中

但是,我通过从servlet进行转发来访问jsp页面,如下所示:

代码语言:javascript
复制
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/MyJsp.jsp"); dispatcher.forward(request, response);

我认为上述转发将导致MyJsp.jsp继承原始servlet的请求对象,因此myBean应该是可用的(它的创建,然后使用原始servlet中的session.setAttribute("myBean",myBean)存储)。这不正确吗?为什么当会话作用域请求成功时请求作用域会失败?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-29 07:11:45

这不正确吗?为什么当会话作用域请求成功时请求作用域会失败?

不你不对。

请求对象只适用于当前请求,并且requestsession对象之间没有通信。

若要使对象在请求中可用,应使用

在发送到您的视图之前先使用request.setAttribute("OBJname" , Object)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26090572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档