gpt4 book ai didi

java - struts2.3.12中servletactioncontext为空

转载 作者:行者123 更新时间:2023-11-30 04:23:52 28 4
gpt4 key购买 nike

for (Cookie cookie : ServletActionContext.getRequest().getCookies()) {

上面的行给了我

java.lang.NullPointerException
at interceptors.RemembermeInterceptor.intercept(RemembermeInterceptor.java:35)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

它曾经在 struts2.1.8 中工作正常,我刚刚将 POM.xml 中的 struts2 版本升级到 2.3.12,但它停止工作并出现上述错误。

最佳答案

此行中有两件事可能导致 NullPointerException:

for (Cookie cookie : ServletActionContext.getRequest().getCookies()) {
    如果在 HTTP 请求之外调用
  1. ServletActionContext.getRequest() 将返回 null。由于您是从拦截器调用该行,因此这似乎不太可能。

  2. 如果没有随请求发送 cookie,
  3. ServletActionContext.getRequest().getCookies() 将返回 null。尝试迭代空集合或数组将产生 NPE。

尝试按如下方式更改代码:

Cookie[] cookies = ServletActionContext.getRequest().getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
// do something
}
}

关于java - struts2.3.12中servletactioncontext为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16345876/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com