java web session得到的ServletContext对象不一样! 50

首先请看如下代码:TestObjectobj1=(TestObject)myHttpRequest.getSession().getServletContext().ge... 首先请看如下代码:

TestObject obj1 = (TestObject)myHttpRequest.getSession().getServletContext().getAttribute(Constants.PARAM1);
System.out.println("ServletContext :" + myHttpRequest.getSession().getServletContext());
问题最初是因为得到的TestObject对象不同,进而进行调试,发现是得到的ServletContext对象不同,这里shHttpRequest是HttpRequest的一个封装对象,这段代码所在方法的类是ActionSupport的子类。
系统是一个使用了SSH框架的web应用程序,现通过两个不同页面发出的请求,执行以上代码得到session,再得到ServletContext对象,两次请求控制台打印的ServletContext对象的地址居然不一样,但是在本地环境中,调试得到的对象是一样的,这是为什么,也太奇怪了,ServletContext对象难道不是应用程序中共享的吗?还会得到两个不一样的ServletContext对象?
展开
 我来答
zhongtyler
2015-01-29 · TA获得超过4408个赞
知道大有可为答主
回答量:4384
采纳率:79%
帮助的人:932万
展开全部
默认的servletContext应该是同一个,不过近期看到不少框架为了session同步,重新构筑session。这时候两者就不见的一样了。你确定一下你的session是系统的还是通过其他方式构建的。
怪异丶蜡笔小新
2015-01-29 · TA获得超过509个赞
知道小有建树答主
回答量:826
采纳率:46%
帮助的人:311万
展开全部
这个问题,我不敢妄下定论,等更专业的人来跟你解释
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式