我在 struts2 中遇到会话管理问题。我在拦截器的会话中设置一个属性,这是我整个应用程序的默认拦截器。在我的操作中,我正在实现 SessionAware 接口并将会话作为地图抓取。但是我在拦截器中设置的属性在我的操作中的会话映射中不存在。我是否错过了 baseAppStack 中的任何默认拦截器,或者知道我错过了什么?
我在 struts.xml 中的拦截器定义:
我的拦截器代码:
HttpSession session = request.getSession (true); params = (SessionParams)session.getAttribute(Constants.KEY_SESSION_PARAMS);
如果(参数 == null){
//some code to populate params
session.setAttribute(Constants.KEY_SESSION_PARAMS, params); }
我的操作代码:
Map session = getSession();
SessionParams params = (SessionParams) session.get(Constants.KEY_SESSION_PARAMS);