ActionContext.getContext() returns null 在 Struts 中使用 Session 2

ActionContext.getContext() returns null using Session in Struts 2

我正在尝试在 Struts 2:

中使用 Session
private Map<String, Object> session = ActionContext.getContext().getSession();

但是我收到这个错误:

Exception in thread "main" java.lang.NullPointerException: Cannot invoke 
"com.opensymphony.xwork2.ActionContext.getSession()" because the return value of 
"com.opensymphony.xwork2.ActionContext.getContext()" is null

我尝试使用 Struts 的 SessionMap,但仍然收到相同的错误消息。我已经尝试更改 struts-core 库,也尝试了 Google 的一些解决方案,但仍然没有解决这个问题。

ActionContext is a container placeholder for the action invocation, more detailed explanation is here.

动作上下文可以是 null 的原因有很多。您正在启动另一个线程,或修改现有线程,或者它尚未创建。

要获得 SessionMap 还有另一种方法。让您的操作 class 实现 SessionAware 并确保您已为该操作配置默认拦截器堆栈。之后,会话映射应该被注入到操作实例中。更多信息 here.