shiro判定无权限后跳转页面失效
来源:互联网 发布:js创建html表格 编辑:程序博客网 时间:2024/06/06 03:39
<!-- 通过unauthorizedUrl指定没有权限操作时跳转页面 --><property name="unauthorizedUrl" value="/permission/nopermission.action" />
配置了,但是却没有跳转到无权限的指定控制器或者页面,究其原因如下,先post一个源码:
private void applyUnauthorizedUrlIfNecessary(Filter filter) { String unauthorizedUrl = this.getUnauthorizedUrl(); if(StringUtils.hasText(unauthorizedUrl) && filter instanceof AuthorizationFilter) { AuthorizationFilter authzFilter = (AuthorizationFilter)filter; String existingUnauthorizedUrl = authzFilter.getUnauthorizedUrl(); if(existingUnauthorizedUrl == null) { authzFilter.setUnauthorizedUrl(unauthorizedUrl); } } }
注意,这里要apply这个url必须满足两个条件,即不为空,并且filter是AuthorizationFilter,然后,只有perms,roles,ssl,rest,port才是属于AuthorizationFilter,而anon,authcBasic,auchc,user是AuthenticationFilter,所以unauthorizedUrl设置后页面不跳转
以上都是直接复制粘贴别人的过来的,下面我们来说解决方法。
解决方法:
自定义异常,判断为UnauthorizedException之后跳转页面
自定义异常类:
public class MyExceptionResolver implements HandlerExceptionResolver { @Override public ModelAndView resolveException(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) { // TODO Auto-generated method stub System.out.println("==============异常开始============="); //如果是shiro无权操作,因为shiro 在操作auno等一部分不进行转发至无权限url if(e instanceof UnauthorizedException){ ModelAndView mv = new ModelAndView("/error/nopermission"); return mv; } e.printStackTrace(); System.out.println("==============异常结束============="); ModelAndView mv = new ModelAndView("error"); System.out.println(e.toString().replaceAll("\n", "<br/>")); mv.addObject("exception", e.toString().replaceAll("\n", "<br/>")); return mv; }
在springmvc.xml中配置
<!-- 通过unauthorizedUrl指定没有权限操作时跳转页面 --><property name="unauthorizedUrl" value="/permission/nopermission.action" />
阅读全文
0 0
- shiro判定无权限后跳转页面失效
- shiro +springmvc无权限跳转到指定错误页面
- shiro登录成功后指定跳转页面
- 页面跳转后样式丢失js失效
- Struts跳转后CSS页面样式失效
- session失效后跳转到登陆页面
- session失效后跳转到登陆页面
- Shiro无权限,不进行unauthorizedUr无权限l跳转,而是没有权限的错误
- shiro权限控制,会话超时跳转登录页面只有iframe跳转,父页面没有跳转
- jquery mobile页面跳转后样式丢失js失效
- jsp:跳转后页面css和js失效问题解决
- jquery mobile页面跳转后样式丢失js失效
- springmvc控制登录用户session失效后跳转登录页面
- session失效后,跳转到登陆页面的解决办法
- JQuery Mobile跳转页面后css和js失效
- FreeCMS商业版 用户session失效后跳转页面地址修改
- springmvc控制登录用户session失效后跳转登录页面
- 我的shiro之旅: 十五 shiro 登录成功后,跳转到登录前的页面
- 自旋锁、排队自旋锁、MCS锁、CLH锁
- 几种常见分布
- js target和currentTarget
- d3画的图或者svg图转base64编码格式
- 如何正确的下载和配置opencv和opencv_contrib
- shiro判定无权限后跳转页面失效
- CSDN-markdown编辑器
- js toFixed问题
- 贪心算法区间不相交问题
- Visual Studio Code 自定义Snippet配置
- 一 线性表的有关操作
- Linux守护进程Shell脚本
- how2j仿天猫前端
- caffe2 三: Basics of Caffe2