美好的一天,
以下是我的Java代码:
Map< String, Account > accountMap = result.getAccountsMap( );
if ( accountMap != null )
command.getSession( ).setAttribute( Constants.OA, accountMap );
然后,从今天早上开始,它会连续IllegalStateException
命中>
java.lang.IllegalStateException:空 在com.ibm.ws.session.http.HttpSessionImpl.setAttribute(HttpSessionImpl.java:248) 〜[com.ibm.ws.webcontainer.jar:na] 在com.ibm.ws.session.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上运行。
有人可以建议我吗?
答案 0 :(得分:1)
我猜这届会议是无效的。您可以向isRequestedSessionIdValid()
添加支票吗?您是从command
对象而不是直接从HttpServletRequest
对象中拉出它,这意味着它很容易成为旧的无效对象。
答案 1 :(得分:1)
是的,这是由于在无效的会话上调用了该方法:
HttpServletRequest.getSession(false)那时也应该返回null。