struts2的拦截器AbstractInterceptor「建议收藏」

struts2的拦截器AbstractInterceptor「建议收藏」publicclassAuthorizationInterceptorextendsAbstractInterceptor{@Override   publicStringintercept(ActionInvocationai)throwsException{      Map<?,?>session=ai.getInvocationConte…

大家好,又见面了,我是你们的朋友全栈君。

public class AuthorizationInterceptor extends AbstractInterceptor {

@Override
    public String intercept(ActionInvocation ai) throws Exception {

        Map<?, ?> session = ai.getInvocationContext().getSession();
        UsrinfVO actor = (UsrinfVO) session.get(Constants.LGNUSR);
            if (actor == null) {

                actor = SpringUtil.getLgnUsr();
            }
            Action action = (Action) ai.getAction();
            if (action instanceof UsrAction) {

                return ai.invoke();
            }
                HttpServletRequest request = ServletActionContext.getRequest();
                // AJAX request session time out handle
                String type = request.getHeader(“X-Requested-With”);
                if ( type != null && type.equalsIgnoreCase(“XMLHttpRequest”)) {

                    if(!validateLoginStatus(actor)){

                        HttpServletResponse response = ServletActionContext.getResponse();
                        response.setContentType(“text/html;charset=utf-8”);
                        PrintWriter pw = response.getWriter();
                        //request.setAttribute(“message”, “timeout”);
                        Log.info(“Ajax 超时”);
                        pw.write(“timeout”);
                        return null;
                    }
                }
                if (!validateLoginStatus(actor)) {

                    Log.info(“超时退出”);
                    return “goLoginAppPage”;
                }
   
                return ai.invoke();
            }
    }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/146374.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月14日 上午8:20
下一篇 2022年5月14日 上午8:40


相关推荐

  • phpMyAdmin安装图解教程

    phpMyAdmin安装图解教程 先下载一份最新版的phpMyAdminMYSQL管理器,点击下载phpMyAdmin解压后得到一个phpMyAdmin的目录(你可以改名)找到/libraries/config.default.php文件(旧版本是根目录下的config.inc.php文件),用写字板(不要用记事本,这是UTF8编码)进行编辑。找到$cfg['PmaAbsoluteUri']

    2022年5月31日
    108
  • Circos从入门到精通

    Circos从入门到精通Circos 从入门到精通

    2026年3月20日
    2
  • springBoot 入门(二)—— 使用 spring.profiles.active来区分配置

    springBoot 入门(二)—— 使用 spring.profiles.active来区分配置背景很多时候 我们项目在开发环境和生成环境的环境配置是不一样的 例如 数据库配置 在开发的时候 我们一般用测试数据库 而在生产环境的时候 我们是用正式的数据 这时候 我们可以利用 profile 在不同的环境下配置用不同的配置文件或者不同的配置 springboot 提供 springboot 允许你通过命名约定按照一定的格式 application profile propert

    2026年3月26日
    2
  • 智能销售Agent技术路线图:从设计到落地的全方位指导

    智能销售Agent技术路线图:从设计到落地的全方位指导

    2026年3月16日
    2
  • Mac连接不上无线网络的解决方法「建议收藏」

    Mac连接不上无线网络的解决方法「建议收藏」Mac电脑突然连不上WiFi了怎么办?小编使用了这么久的Mac,这种情况也是出现过很多次的,这个问题如果不是因为苹果无线网硬件出现了故障,基本都能通过排除法来解决问题,主要解决思路是从路由器过热造成网络阻塞,IP地址冲突、系统bug导致等这些方面入手,下面小编给大家介绍一下详细的解决方法,需要的小伙伴看过来!第一步、重启Mac无线网卡点击桌面顶部无线网络图标,下拉菜单中点击“关闭Wi-Fi”,然后再使用同样方法,下拉菜当中点击“Wi-Fi:打开”,重新启动无线网卡。第二步、重启路由器过长时间开着路

    2022年6月21日
    61
  • 免费且好玩的API接口

    免费且好玩的API接口

    2021年11月11日
    116

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号