java - 在Struts 2中实现SessionAware接口(interface)后SessionMap为null

标签 java struts2 xml-configuration struts2-interceptors

我正在我的操作类中实现SessionAware。但是,sessionMap 始终为nullsetSession 方法似乎没有被调用。 这是代码。在execute方法中,sessionMap始终为null

我做错了什么?

Action 类:

public class HelloWorldAction extends ActionSupport implements SessionAware
{
    private static final long serialVersionUID = 544659976107736338L;
    private Map<String, Object> sessionMap;
    
    private String name;

       public String execute() throws Exception {
    
           if(sessionMap != null) {
               sessionMap.put("TestID", "Test");
           }
           return "success";
       }
       
       public String getName() {
          return name;
       }

       public void setName(String name) {
          this.name = name;
       }

    @Override
    public void setSession(Map<String, Object> arg0) {
        this.sessionMap = arg0;
    }
    }

struts xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
   "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
   "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
   <include file="struts-default.xml"/>
        
 <package name="my-projects" namespace="/" extends="struts-default">

      <action name="hello" 
            class="com.my.projects.actions.HelloWorldAction" 
            method="execute">
            <result name="success">/jsp/HelloWorld.jsp</result>
      </action>      
       

最佳答案

您可以尝试此方法来获取 session 映射

Map session = ActionContext.getContext().getSession();

并删除下面的行

<include file="struts-default.xml"/>

关于java - 在Struts 2中实现SessionAware接口(interface)后SessionMap为null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31094680/

相关文章:

java - 请求的资源 (/StrutsHelloWorld/) 不可用。 Jboss AS7服务器

java - Struts 1.x 和 Struts 2.x 的 URL 模式问题

java - 支持通过 OAuth 进行 Facebook/Twitter 身份验证的 CAS 服务器

java - 如何修复数组索引越界错误?

java - 如何从Mysql Db在struts2中显示blob类型的图像

servlets - 用于开发的最干净的 Jetty 配置?

Javafx 时间线在经过多个监听器时停止播放

java - 在 Spring Security 中向身份验证过程添加自定义过滤器

java - Struts2 + Json 项目序列化

java - 我的 Struts2 应用程序出现错误 404 : Resource not available