- 浏览: 2290546 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (357)
- J2EE (49)
- JavaScript (40)
- Spring (19)
- Struts (5)
- CSS (8)
- Hibernate (16)
- Java (67)
- DWR (4)
- JSON (3)
- XFIRE (1)
- Tomcat (1)
- Ant (2)
- 设计模式 (2)
- 经典收藏 (2)
- JSP (10)
- Linux (0)
- WebLogic (11)
- myeclipse (13)
- Buffalo (4)
- 文件上传相关 (1)
- oracle (33)
- html (6)
- JSTL (3)
- SVN (2)
- GIT (1)
- 孙卫琴(Java网络编程精解) (1)
- DOM4J (2)
- Swing (1)
- AJAX (1)
- Eclipse (5)
- 日志组件 (3)
- PowerDesigner (1)
- Jquery (22)
- IT技术开发相关网址 (1)
- Nutz (1)
- 其它 (1)
- Velocity (3)
- WebService (1)
- MySql (2)
- Android (1)
- Maven (2)
- Quartz (11)
- Lucene (1)
- springsource (1)
- Junit (1)
- Activiti (0)
最新评论
-
yzlseu:
拼凑,没有营养
Activiti进阶—分配组任务 -
zhangsenhao:
非常赞!代码很清楚
SpringMVC3.0+MyIbatis3.0(分页示例) -
xiamw2000:
分页写得不对,应该是 : order by ${orderNa ...
SpringMVC3.0+MyIbatis3.0(分页示例) -
sheertewtw:
...
SpringMVC:上传与下载 -
kingtoon:
...
XSS之xssprotect
转载:用户登陆 session.invalidate 销毁session
http://heisetoufa.iteye.com/blog/227194
报错如下:
java.lang.IllegalStateException: Session invalidation is in progress with different thread
at weblogic.servlet.internal.session.SessionData.invalidate(SessionData.java:792)
at jsp_servlet._logon.__exit._jspService(exit.jsp:10)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:526)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7053)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
解决方法:
不用:session..invalidate();
改为: session.removeAttribute("...");
http://heisetoufa.iteye.com/blog/227194
报错如下:
java.lang.IllegalStateException: Session invalidation is in progress with different thread
at weblogic.servlet.internal.session.SessionData.invalidate(SessionData.java:792)
at jsp_servlet._logon.__exit._jspService(exit.jsp:10)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:526)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7053)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
解决方法:
不用:session..invalidate();
改为: session.removeAttribute("...");
发表评论
-
【转载】Eclipse Class Decompiler——Java反编译插件
2018-06-24 11:09 1361参见:jd-eclipse 的安装和使用(最新版的) h ... -
Java多线程序源码
2016-06-24 15:04 10421、《Java多线程编程核心技术》源代码(高洪岩) 2、Jav ... -
Spring & Junit
2016-05-27 13:18 7591 测试基类(BaseJunit4Test) import ... -
XSS之xssprotect
2012-12-07 23:03 29498参考资料 1 跨网站脚本 ... -
myeclispe之图解weblogic81配置
2011-11-07 10:11 1623一 创建Weblogic81域(如下图) 注意事项:一般 ... -
Cannot forward a response that is already committed
2011-09-07 09:43 5589参考资料 1 Cannot forward a respons ... -
WebLogic之Cannot parse POST parameters of request解决方法
2011-09-06 15:31 11349参考资料 1 关于Cannot parse POST para ... -
WebLogic之weblogic.xml.jaxp.RegistrySAXTransformerFactory
2011-08-16 16:46 8779参考资料 1 Thread: java.lang.ClassC ... -
Quartz之一个任务绑定多个触发器
2011-08-15 16:27 5030参见官方示例: SchedulerFactory sf = ... -
Quartz之QuartzInitializerListener
2011-08-15 15:12 7925问题:我想在WEB容器启动时就执行任务怎么办呢 Quartz: ... -
Quartz之QuartzInitializerServlet
2011-08-15 14:39 9267问题:我想在应用程序启动之后去执行任务怎么办呢! Quartz ... -
jQuery与Java实现图片的剪切
2011-08-05 15:10 30519一 参考资料 1 jquery Jcrop 头像,logo截图 ... -
WebLogic之Session
2011-07-25 13:15 24051参考资料 1 关于WebLogic的Session丢失的问题 ... -
Frameset导致Cookies和Session丢失的原因及解决办法
2011-07-25 12:28 4377参考资料 1 Frameset导致Cookies和Sessio ... -
java,javascript对18位身份证格式的验证算法
2011-07-12 14:15 7112参考资料 1 java实现的18位身份证格式验证算法 http ... -
Quartz之CronTrigger
2011-07-11 15:01 14725参考资料 1 quartz 学习笔记 http://china ... -
Quartz之CronExpression
2011-07-08 16:15 33781参考资料 1 Spring中任务调度(Quartz篇)-续-c ... -
Quartz之SimpleTrigger
2011-07-08 15:21 27246SimpleTrigger: 它只能用于指定任务在一个特定时间 ... -
Quartz2之入门示例
2011-07-07 17:12 79222环境:XP+Myeclipse6.5+JDK1.6 q ... -
Sprint之java.util.Time
2011-07-06 16:17 1693参考资料 1 在Spring中使用JDK Timer进行任务调 ...
相关推荐
用户登录时,调用LoginServlet,将用户名写入application的在线用户列表中,用户退出时,调用LogoutServlet,调用session.invalidate(),交给HttpSessionListener的sessionDestroyed()方法,将用户从在线列表中删除。...
`mailLoginout.jsp`用于注销登录,通过调用`session.invalidate()`方法清除Session,使用户回到未登录状态。 在角色管理的场景下,可以将用户的角色信息也存储在Session中,然后在各个页面判断用户角色来决定显示...
在Java中,可以使用HttpSession的`invalidate()`方法来销毁Session: ```java HttpServletRequest request = ...; HttpSession session = request.getSession(); session.removeAttribute("username"); // ...
开发者可以调用`HttpSession`的`setAttribute`方法来设置值,`getAttribute`来获取值,`removeAttribute`来删除值,以及`invalidate`来销毁整个Session。 **4. Session源码分析** 在Java Servlet API中,`...
session.invalidate(); // 销毁Session,结束会话 ``` 6. **Session超时**:默认情况下,Session会在一段时间无活动后自动失效,防止用户长时间离开电脑而未登出造成的安全问题。可以通过配置web.xml文件调整...
- 销毁Session:`session.invalidate();` **2.2 JSP与Session的结合应用** - 常见的应用场景包括用户登录状态的保持、购物车功能、个性化推荐等,通过JSP结合Session实现用户数据的存储和传递。 - JSP还可以结合...
销毁Session通常有两种方式:一是通过编程方式调用session.invalidate()方法,二是服务器设置的Session超时时间到达,服务器会自动清理过期的Session。 3. **Session的存储** Session数据存储在服务器的内存中,...
session.invalidate(); } ``` **说明:** - `getSession(false)`:该方法尝试获取当前请求的Session对象,如果不存在则返回`null`。 - `invalidate()`:该方法立即销毁当前Session,并清除与之关联的所有属性。 *...
session.invalidate(); ``` 该方法会清除与Session相关的所有数据,并使其失效。这是最常用的彻底清除Session的方式。 #### 实现退出时自动清除Session 为了实现用户退出页面时自动清除Session,可以通过监听...
而Session的销毁有两种情况:一是超过默认的30分钟无活动,二是通过调用`session.invalidate()`手动终止Session。在web.xml中可以配置Session的超时时间,以适应不同应用的需求。 总的来说,Session是Java Web中一...
session.invalidate(); ``` #### 四、示例代码分析 假设我们有一个简单的登录页面,用户输入用户名和密码后提交表单。根据用户输入的情况,我们可以通过以下步骤处理: 1. **HTML表单** - 创建一个HTML表单让...
5. **销毁Session**:当用户登出或者不再需要Session时,应将其销毁以释放服务器资源: ```java session.invalidate(); ``` 在这个"SessionDemo"项目中,可能还包含了如何在多个JSP页面之间传递Session信息,...
开发者可以通过`session.invalidate()`手动结束Session。 2. **Session的常见操作:** - **设置属性:** `session.setAttribute("key", "value")` 将键值对存入Session。 - **获取属性:** `session.getAttribute...
session.invalidate(); ``` 6. **注意问题**:使用session时要注意避免创建过多的session对象,这可能导致服务器内存溢出。同时,session中的数据是全局的,不同用户之间如果不加以控制,可能会引发安全问题。...
也可以通过调用`HttpSession.invalidate()`方法手动销毁Session。 - **移除**:`HttpSessionAttributeListener`接口的`attributeRemoved()`方法会在Session属性被删除时触发。 4. **监控Session中的属性** 如果...
通过这种方式,每次用户登录时,`LoginListenner`都会检查当前登录的账号是否已经在其他session中存在,从而实现“单浏览器登录”的效果。当用户尝试在第二个浏览器中登录时,第一个浏览器的session会被销毁,用户...
<% session.invalidate(); %> // 结束当前用户的会话 ``` **四、session的优缺点** 优点: 1. 能够跨页面保持用户状态。 2. 数据安全性较高,因为session数据存储在服务器端。 缺点: 1. 占用服务器资源,大量...
` 设置属性,`session.getAttribute("key")` 获取属性,`session.invalidate()` 删除Session。 2. **PHP**:通过`session_start()` 开启Session,`$_SESSION['key'] = 'value';` 存储数据,`echo $_SESSION['key'];`...
例如,我们可以设置一个后台任务,每隔一段时间检查所有session,如果发现某个session已经超时,就主动调用session.invalidate()来销毁它。 钝化(Passivation)和活化(Activation)是session管理的高级特性,主要...