博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
acegi的一个异常错误
阅读量:4079 次
发布时间:2019-05-25

本文共 3345 字,大约阅读时间需要 11 分钟。

昨天学习acegi,发现一个异常

 

查看了以下,源代码,异常出错的地方的源代码是这样的:

可以看到,抱着个异常是因为getAuthentication()为null,但是从doc上看来,如果配置了httpSessionContextIntegrationFilter,就应该是把“在执行其他过滤器之前,率先判断用户的session中是否已经存在一个SecurityContext了。如果存在,就把SecurityContext拿出来,放到SecurityContextHolder中,供Spring Security的其他部分使用。如果不存在,就创建一个SecurityContext出来,还是放到SecurityContextHolder中,供Spring Security的其他部分使用。”。从这个上面来看,应该是context不为null,但是getAuthentication()为null。是因为没有经过授权authentication对象就为空了,但是我配置的exceptionTranslationFilter。所以这个问题一直没有解决到,昨晚忙乎了2个多小时。

 

今天早上起来突然想到了,因为exceptionTranslationFilter配置在了filterInvocationInterceptor之前,出了异常没有被exceptionTranslationFilter捕获到,所以就把2者顺序替换了以下,结果搞定。。出了这个异常的时候,自动跳转到exceptionTranslationFilter配置的authenticationEntryPoint属性了。

 

问题解决。。

 

 

转载地址:http://dvini.baihongyu.com/

你可能感兴趣的文章
Java大数据:Hbase分布式存储入门
查看>>
大数据学习:Spark RDD操作入门
查看>>
大数据框架:Spark 生态实时流计算
查看>>
大数据入门:Hive和Hbase区别对比
查看>>
大数据入门:ZooKeeper工作原理
查看>>
大数据入门:Zookeeper结构体系
查看>>
大数据入门:Spark RDD基础概念
查看>>
大数据入门:SparkCore开发调优原则
查看>>
大数据入门:Java和Scala编程对比
查看>>
大数据入门:Scala函数式编程
查看>>
【数据结构周周练】002顺序表与链表
查看>>
C++报错:C4700:使用了非初始化的局部变量
查看>>
【数据结构周周练】003顺序栈与链栈
查看>>
C++类、结构体、函数、变量等命名规则详解
查看>>
C++ goto语句详解
查看>>
【数据结构周周练】008 二叉树的链式创建及测试
查看>>
《软件体系结构》 第九章 软件体系结构评估
查看>>
《软件体系结构》 第十章 软件产品线体系结构
查看>>
《软件过程管理》 第六章 软件过程的项目管理
查看>>
《软件过程管理》 第九章 软件过程的评估和改进
查看>>