繁体   English   中英

击中java.lang.IllegalStateException:在HttpSession中调用setAttribute()时为null

[英]Hitting java.lang.IllegalStateException: null when call setAttribute() in HttpSession

美好的一天,

以下是我的Java代码:

Map< String, Account > accountMap = result.getAccountsMap( );
if ( accountMap != null )
    command.getSession( ).setAttribute( Constants.OA, accountMap ); 

从今天早上开始,它会IllegalStateException触发IllegalStateException

java.lang.IllegalStateException:在com.ibm.ws.session.http.HttpSessionImpl.setAttribute(HttpSessionImpl.java:248)处为null [在com.ibm.ws.session处为[com.ibm.ws.webcontainer.jar:na] .SessionData.putSessionValue(SessionData.java:293)〜[com.ibm.ws.webcontainer.jar:na]在com.ibm.ws.session.SessionData.setAttribute(SessionData.java:217)〜[com.ibm。 ws.webcontainer.jar:na]在com.ibm.ws.session.HttpSessionFacade.setAttribute(HttpSessionFacade.java:169)〜[com.ibm.ws.webcontainer.jar:na]

我曾尝试在Google上进行搜索,但是这似乎是一个非常普遍的例外,而且我不知道应该如何/在何处继续进行故障排除。

该应用程序在WAS 8.5.5上运行。

有人可以建议我吗?

我想这届会议是无效的。 您可以向isRequestedSessionIdValid()添加支票吗? 您是从command对象中而不是直接从HttpServletRequest拉出它,这意味着它很容易成为旧的,失效的。

没错,这是由于在无效会话上调用了该方法:

https://tomcat.apache.org/tomcat-5.5-doc/servletapi/javax/servlet/http/HttpSession.html#setAttribute(java.lang.String,%20java.lang.Object)

HttpServletRequest.getSession(false)那时也应该返回null。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM