首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

真心求解:为啥会每次request后session都不一样,该如何解决

2012-02-14 
真心求解:为啥会每次request后session都不一样情况是这样:环境:jdk6 + eclipse + tomcat 6其它:IE浏览器或

真心求解:为啥会每次request后session都不一样
情况是这样:

环境:jdk6 + eclipse + tomcat 6 
其它:IE浏览器或者Firefox

WEB工程情况:struts 2 Hibernate,serlvet,jQuery,filter

出现问题:

以下一个简单的servlet,主要就两句话

Java code
//Servlet1.java    /**     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)     */    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {        System.out.println("STL2-2 --------" + request.getSession().getId());    }    /**     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)     */    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {        System.out.println("STL2-3 --------" + request.getSession().getId());    }


直接请求这个servlet
http://127.0.0.1:8080/TW/Servlet1
并不断刷新


1.按上面操作,每次打印出的sessionID都不一样。

2.检查,发现所有Struts2的Action session每次都一样。但重新请求Servlet1后,session都会变。

  同时,有这样一个流程:JSP请求另外一个Servlet,两个地方的session居然也不一样。。
  
  至此我已经相当无语了。。。。。

3.后来我把struts和所有的filter全都注释掉了,web.xml中只剩下只个servlet的配置。每次session还是不样。
  但是,我新建一个WEB工程,就简单的一个Servlet,不断刷新,却每次都是同一个session...
  至此,快疯掉了....

4.没办法,各种重启之后,那个JSP请求Servlet的简单流程,两处session居然一样了。但那个直接请求servlet的流程居然还TM不一样。。。。。。
  
 各种操蛋。。。。。

5.NND,心想就算了吧,把那个Servlet1.java删掉。。。。

6.过了一阵,心里还不服,再新建一个servlet,还叫Servlet1.java,重复操作,不断刷新。。。。


我日了,session居然又全部一样了。。。。。。


现在还没找找原因,我觉得整个工程就没修改个啥,结构也相当简单,求解!!!!


如果有朋友遇到这样的问题,可以讨论一下!!

我还有出问题的版本和不出问题版本两个版本都有,有兴趣的可以直接发给你研究一下。。。
加我QQ:136658666

注:出问题时,我已经打包发布到tomcat目录下,问题还是有,所以应该与eclipse没什么关系。






[解决办法]
友情帮顶,看得有点糊涂 一样不一样....
我好想也遇到过类似的情况,会不会和提交方式有关get/post?和浏览器缓存有关?当时我找出的问题好想是这两个...等高手
[解决办法]
也很糊涂;
偶想问题发生在Tomcat,JSP/Servlet的实现是Tomcat, Session也是Tomcat创建和维护的;
看下是否Debug模式,tomcat的\work\Catalina\localhost下的东西是否每次请求都有变化(时间戳);

[解决办法]
顶一下,我也看的很糊涂
[解决办法]
看的有点乱了,,希望早日解决
[解决办法]
125818115

估计还是有不一样的地方吧。。还要具体分析。。。
[解决办法]
这问题真的是神奇了,持续关注
[解决办法]
下载,测试,都一样,你tomcat有问题,鉴定完毕。如果说名字是形式,只要能解决问题就行,那我是不是可以理解成,只要功能能实现,规范不重要?
[解决办法]
在偶的环境中
运行没发现楼主说的问题

环境:jdk6,tomcat 6.0.20
其它:IE浏览器或者Firefox

建议是更换Tomcat版本再测试; 或使用Jboss测试或其它web服务器测试;


[解决办法]
有结果了吗?
[解决办法]
Test Result as follow:

[解决办法]
Sorry,确有这问题;

[解决办法]
呃,看糊涂了……理不清了……
[解决办法]
探讨
终于找到问题的原因了,是因为我的工程名里有个括号。。。。



详细吃完饭再解释。。。。。。


[解决办法]
上面说的URL解析是:
( -> %28 -> (
) -> %29 -> )
root context(ReferenceCode_T400(web))会发生变化;

不知道楼主的理解如何,因对HTTP协议是不很熟,只是个人的理解;

[解决办法]
探讨
引用:

上面说的URL解析是:
( -> %28 -> (
) -> %29 -> )
root context(ReferenceCode_T400(web))会发生变化;

不知道楼主的理解如何,因对HTTP协议是不很熟,只是个人的理解;


应该就是这样。但是FireFox下有个更有趣的问题。

fireFox的地址栏不简单是个文本……

热点排行