java.lang.IllegalStateException: Session invalidation is in progress with differ

swordmood 2009-12-30 04:33:40
你好,我在系统退出时,报以下错误,不知是怎么回事?
开发工具:MyEclipse + weblogic 8
exit.jsp中session处理:

<%
if(request.getSession(false)!=null){session.invalidate(); }
%>

报错如下:
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 com.sinosoft.crm.filter.CheckSessionFilter.doFilter(CheckSessionFilter.java:68)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at com.sinosoft.crm.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:67)
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)

请高手指教下!先谢了~~
...全文
881 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
swordmood 2010-01-04
  • 打赏
  • 举报
回复
自顶~~~
swordmood 2009-12-31
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zl3450341 的回复:]
汗  参考下官网
http://forums.oracle.com/forums/thread.jspa?threadID=728041&tstart=30
[/Quote]

谢谢,但好像也没解决掉~~~
wenjjing2lianee 2009-12-30
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 swordmood 的回复:]
引用 3 楼 crazylaa 的回复:
你是不是点了退出,然后马上停止weblogic?可能停止weblogic的时候,会去主动清除所有session,但页面已经在处理那个sessioin了,所以。。。。。

不知道是不是啊,呵呵。


没有呀,weblogic是一直启着的呀~~~
[/Quote]

你把这session处理写在一个servlet里试试.
swordmood 2009-12-30
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 crazylaa 的回复:]
你是不是点了退出,然后马上停止weblogic?可能停止weblogic的时候,会去主动清除所有session,但页面已经在处理那个sessioin了,所以。。。。。

不知道是不是啊,呵呵。
[/Quote]

没有呀,weblogic是一直启着的呀~~~
huxiaowi 2009-12-30
  • 打赏
  • 举报
回复
API是这样说的:
if this method is called on an already invalidated session。

意思是说你在一个已经失效的session上调用了invalidate()
zl3450341 2009-12-30
  • 打赏
  • 举报
回复
zl3450341 2009-12-30
  • 打赏
  • 举报
回复
public class IllegalStateException
extends RuntimeException
在非法或不适当的时间调用方法时产生的信号。
换句话说,即 Java 环境或 Java 应用程序没有处于请求操作所要求的适当状态下。

具体的不清楚了
crazylaa 2009-12-30
  • 打赏
  • 举报
回复
你是不是点了退出,然后马上停止weblogic?可能停止weblogic的时候,会去主动清除所有session,但页面已经在处理那个sessioin了,所以。。。。。

不知道是不是啊,呵呵。
swordmood 2009-12-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 crazylaa 的回复:]
连点两次吧?
Session invalidation is in progress with different thread
另一thread正在处理session失效。。。

汗,e文不好,当我帮顶了。
[/Quote]

谢谢,但是就点了一次啊~~
crazylaa 2009-12-30
  • 打赏
  • 举报
回复
连点两次吧?
Session invalidation is in progress with different thread
另一thread正在处理session失效。。。

汗,e文不好,当我帮顶了。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧