在使用shiro框架的时候,有时候会因为登录问题找不到注销的controller。所以会报404的错误,下面是解决办法:

1.首先写一个类SystemLogoutFilter继承LogoutFilter类,具体代码如下,注意要贴@Service标签:

import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

import org.apache.shiro.session.SessionException;
import org.apache.shiro.subject.Subject;
import org.apache.shiro.web.filter.authc.LogoutFilter;
import org.springframework.stereotype.Service;

/**
* @author Abby
*
*/
@Service
public class SystemLogoutFilter extends LogoutFilter {
@Override
protected boolean preHandle(ServletRequest request, ServletResponse response) throws Exception {
//在这里执行退出系统前需要清空的数据

Subject subject = getSubject(request, response);

//String redirectUrl = getRedirectUrl(request, response, subject);
String redirectUrl="/login.jsp";
System.out.println(redirectUrl);

try {

subject.logout();

} catch (SessionException ise) {

ise.printStackTrace();

}

issueRedirect(request, response, redirectUrl);
//返回false表示不执行后续的过滤器,直接返回跳转到登录页面
return false;
}

}

2.需要在shiro配置文件里面添加一些新的配置,具体配置如下:

<property name="filters">
<map>
<entry key="logout" value-ref="systemLogoutFilter" />
</map>
</property>

<property name="filterChainDefinitions">
<value>
/logout=logout
</value>
</property>

转载于:https://www.cnblogs.com/yinghuanan/p/9441432.html

使用shiro框架,注销问题的解决相关推荐

  1. shiro框架,自定义realm注入service失败解决办法

    shiro框架,自定义realm注入service失败解决办法 报错如下: org.springframework.beans.factory.BeanCreationException: Error ...

  2. shiro框架---解决权限限制问题

    shiro简介 Apache Shiro是一个强大而灵活的开源安全框架,它能够干净利落地处理身份认证,授权,企业会话管理和加密(核心功能). 以下是你可以用 Apache Shiro所做的事情: 1. ...

  3. Shiro使用redis作为缓存(解决shiro频繁访问Redis)

    一个开源项目,实现了redis作为缓存 缓存用户的权限 和 session信息,还有两个功能没有修改,一个是用户并发登录限制,一个是用户密码错误次数.本篇中几个类 也是使用的开源项目中的类,只不过是拿 ...

  4. shiro将session认证改成token认证_初步学习Shiro框架 第一集

    1.什么是Shiro Apache Shiro™ is a powerful and easy-to-use Java security framework that performs authent ...

  5. shiro框架的基本理解

    1.简介 shiro是一个安全框架,可以进行认证.授权.密码加密.会话管理 从外部来解析shiro框架: **Subject:**主体,代表了当前"用户",这个用户不一定是一个具体 ...

  6. Shiro框架和JWT

    目录 shiro简介 1.认证 2.授权 3.shiro靠什么做认证与授权 JWT简介 创建JWTUtil工具类 令牌封装成对象 AuthenticationToken类 AuthorizingRea ...

  7. shiro框架的使用及扩展

    2019独角兽企业重金招聘Python工程师标准>>> 管理后台的权限管理模块搭建中使用了shiro框架. shiro的优点是:相对Spring Security较为轻巧,使用起来自 ...

  8. 关于Shiro框架权限标识符中*使用的总结

    2019独角兽企业重金招聘Python工程师标准>>> #关于Shiro框架权限标识符中*使用的总结 Shiro框架中独创的权限标识符(Wildcard Perssions)可以很优 ...

  9. 权限管理(shiro框架)

    为什么80%的码农都做不了架构师?>>>    1. 权限管理的流程 页面中的菜单和按钮就是我们访问某个功能的入口. 无论是访问菜单或者按钮,要想完成某个业务操作,实际上是需要发送一 ...

最新文章

  1. .NET应用架构设计—面向查询服务的参数化查询设计(分解业务点,单独配置各自的数据查询契约)...
  2. ug导出step文件失败_解决UG导出CAD图纸失败的问题
  3. mysql缺少函数_Sqlserver的窗口函数的精彩应用之数据差距与数据岛-答案篇
  4. vista任务栏透明_增加Windows Vista任务栏预览大小的赏金(付费!)
  5. 如何优雅地使用 VSCode 来编辑 vue 文件?
  6. c/c++入门教程 - 2.5 文件操作、fstream(write写文件、read读文件、ios::binary二进制文件读写)
  7. Debian 8 时间同步
  8. 设计模式----原型模式(C++实现)
  9. Millumin 3 for mac使用教程-创建一个简单的视频映射
  10. 统计项目代码行数工具,如何统计代码行数。
  11. 倒计时器c语言,在线倒计时器
  12. ssim算法计算图片_OpenCV 实现图像结构相似度算法 (SSIM 算法)
  13. 音视频学习(三)——sip协议
  14. Adobe携手微软、世纪互联在中国推多种云服务
  15. Linux进程间通信(下)
  16. vim之快速查找功能
  17. IMX6ull_Linux驱动编写(1)
  18. Vue.js面试题整理
  19. 通达信指标:捕捞季节
  20. onsubmit和submit事件处理函数怎么不生效呢?

热门文章

  1. python教材目录,python 目录
  2. 关于通信matlab 仿真,关于MATLAB在通信仿真系统中的运用
  3. 滴滴java开发面试题_Java开发经典面试题(十二)
  4. python的内存管理机制及调优手段_Python的内存管理机制及调优手段
  5. C语言项目:灰度处理技术
  6. java xxtea加密,base64和Xxtea的加密和解密
  7. linux6.2 网络yum,配置RHEL6.2的YUM源
  8. 工业级光纤收发器的单多模光纤?单多光模块及其用法?
  9. 交换机的端口结构及端口类型
  10. 【渝粤教育】国家开放大学2018年春季 8661-21T传感与检测技术 参考试题