java - 在 HttpSession 中调用 setAttribute() 时遇到 java.lang.IllegalStateException: null
问题描述
再会,
以下是我的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] at 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]
我试图用谷歌搜索,但这似乎是一个非常常见的例外,我不知道应该如何/在哪里继续进行故障排除。
此应用程序在 WAS 8.5.5 上运行。
谁能给我建议?
解决方案
我猜这个会话此时是无效的。您可以添加支票isRequestedSessionIdValid()
吗?事实上,你是从一个command
对象而不是HttpServletRequest
直接从一个对象中提取它,这意味着它很容易成为一个旧的、无效的对象。
推荐阅读
- jmeter - 即使在生产中关闭了代码,我的 Jmeter 脚本也通过了
- repo - 回购初始化停止总是检查最新的回购
- docker - 运行 Docker 构建时出现未指定的错误 (0x80004005)
- heap-memory - 在 cloudwatch 中收集 JVM 指标,例如堆使用情况 GC 信息以获取 Fargate 服务
- sharepoint - 在 sharepoint 现代网站上嵌入最新的网络聊天
- typescript - 如何在异步方法中返回承诺?
- jquery - 在 wordpress upolad 媒体窗口上显示自定义消息?
- python - 如何将嵌套的 JSON 转换为 Pandas 数据框?
- firebase - 无法从 Firestore 中提取数据
- html - 如何使 Django 视图需要用户登录?