java web 用户无缘无故会退出
项目前后台会每隔几秒钟通信一次,所以不存在session过时的问题。但是有时候(一般几天发生一次)用户会正在操作的时候,页面自动跳转到登录页面。这种情况也就只有session失效才会发生,但是session应该不会失效,前台几秒钟就会和后台通信。
请问有人遇到过这样的问题吗?
这种问题应该怎么查找?
------解决方案--------------------"正在操作"是连续的操作过程中还是半天没动第一次操作呢?
------解决方案--------------------如何代码是你写的,这么理解是对的,关键是不一定是session来村对象啊,有可能为cookie,struts2也有个拦截器可以负责验证用户,情况不一的,最好找代码的依据,不能靠猜测的
------解决方案--------------------ajax不一定管用,比如他电脑不动,然后黑屏了,这时候程序处于休眠状态,ajax也不会执行了
------解决方案--------------------你Session的MaxInactiveInterval是多少
------解决方案--------------------写一个session 销毁的监听器。。然后打点日志 来分析
------解决方案--------------------前台几秒钟就会和后台通信。
你能确定每次通信都能正常么?
如果确定通信正常,再观察观察吧。
------解决方案--------------------
ajax调用的后台使用过session吗?比如session.getAttribute("user")这种的,如果没使用过session,那不起作用。如果经常操作着就掉了,可能是服务器的问题,反正我遇到过类似的
------解决方案--------------------每次通信打印session信息。写日志,看日志就很清楚了
------解决方案--------------------在web.xml里配置session的时间为30分钟,30分钟后不管客户端和服务端有没有交互,session都会被删掉吧??
------解决方案--------------------
如何代码是你写的,这么理解是对的,关键是不一定是session来村对象啊,有可能为cookie,struts2也有个拦截器可以负责验证用户,情况不一的,最好找代码的依据,不能靠猜测的
这个项目没有用cookie,就是用session来判断的,所以我很纳闷,不知道这是怎么回事...
session就是靠在客户端生成cookie来维护session在一定时间内是不变的,我以前碰到过这种问题,不过中间件是weblogic,weblogic有个配置文件weblogic.xml里面可以配置是否生成cookie,设置为true了以后才解决了这个问题,那时也是用户登录以后时不时的就自动跳转至登录页面了