SpringSecurity报错Error creating bean with name ‘org.springframework.security.filterChains‘...._error creating bean with name 'org.springframework-程序员宅基地

技术标签: spring  修复bug  java  安全  

错误详情:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.filterChains': Cannot resolve reference to bean 'org.springframework.security.web.DefaultSecurityFilterChain#8' while setting bean property 'sourceList' with key [8]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.DefaultSecurityFilterChain#8': Cannot resolve reference to bean 'org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter#0' while setting constructor argument with key [4]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter#0': Cannot create inner bean '(inner bean)#32a98e52' of type [org.springframework.security.web.authentication.ForwardAuthenticationSuccessHandler] while setting bean property 'authenticationSuccessHandler'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#32a98e52': Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.web.authentication.ForwardAuthenticationSuccessHandler]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: 'pages/main.jsp' is not a valid forward URL
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:342)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:113)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:427)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:173)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1706)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1451)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:860)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:878)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)
	at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:401)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:292)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:103)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4939)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.DefaultSecurityFilterChain#8': Cannot resolve reference to bean 'org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter#0' while setting constructor argument with key [4]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter#0': Cannot create inner bean '(inner bean)#32a98e52' of type [org.springframework.security.web.authentication.ForwardAuthenticationSuccessHandler] while setting bean property 'authenticationSuccessHandler'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#32a98e52': Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.web.authentication.ForwardAuthenticationSuccessHandler]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: 'pages/main.jsp' is not a valid forward URL
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:342)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:113)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:427)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:173)
	at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:680)
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:196)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1358)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:557)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:330)
	... 26 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter#0': Cannot create inner bean '(inner bean)#32a98e52' of type [org.springframework.security.web.authentication.ForwardAuthenticationSuccessHandler] while setting bean property 'authenticationSuccessHandler'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#32a98e52': Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.web.authentication.ForwardAuthenticationSuccessHandler]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: 'pages/main.jsp' is not a valid forward URL
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:389)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:134)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1706)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1451)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:330)
	... 40 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#32a98e52': Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.web.authentication.ForwardAuthenticationSuccessHandler]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: 'pages/main.jsp' is not a valid forward URL
	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:312)
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:293)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1358)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:557)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:374)
	... 50 more
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.web.authentication.ForwardAuthenticationSuccessHandler]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: 'pages/main.jsp' is not a valid forward URL
	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:213)
	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:117)
	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:308)
	... 56 more
Caused by: java.lang.IllegalArgumentException: 'pages/main.jsp' is not a valid forward URL
	at org.springframework.util.Assert.isTrue(Assert.java:118)
	at org.springframework.security.web.authentication.ForwardAuthenticationSuccessHandler.<init>(ForwardAuthenticationSuccessHandler.java:44)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:200)
	... 58 more

错误分析:

控制台日志的错误中,说Error creating bean with name 'org.springframework.security.filterChains’错误,创建bean对象出错,控制台Tomcat说Caused by: java.lang.IllegalArgumentException: ‘pages/main.jsp’ is not a valid forward URL错误,解决的时候我一直以为是bean创建出错了,并且只看了日志的错误,导致一直没有找到解决的方案,后来仔细观察控制台的错误,在最后几行的Tomcat日志里面发现了错误,真坑,真气。看到Tomcat的日志后我才明白,这就是一个简单的路径写错了的错误,并不是什么很难解决的bug,就是比容易发现。

解决方案:

项目结构如图所示:
在这里插入图片描述

原来在spring-security中的配置文件如图:
在这里插入图片描述

将配置文件里面的路径修改正确:
在这里插入图片描述
清除缓存,安装项目,重启服务器:
在这里插入图片描述
问题解决!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/cm_mc_cm_mc/article/details/123010600

智能推荐

【网络流24题----14】孤岛营救问题-程序员宅基地

文章浏览阅读94次。孤岛营救问题Time Limit:1 SecMemory Limit:128 MBDescription1944年,特种兵麦克接到国防部的命令。要求马上赶赴太平洋上的一个孤岛,营救被敌军俘虏的大兵瑞恩。瑞恩被关押在一个迷宫里,迷宫地形复杂,但幸好麦克得到了迷宫的地形图。迷宫的外形是一个长方形,其南北方向被划分为 N行,东西方向被划分为 M列,于是整个迷宫被划分为 N×M...

RDD 转化为 DataFrame_spark java rdd转dataframe-程序员宅基地

文章浏览阅读685次。DataFrame:读取和执行查询都会返回DataFrame,是一个由ROW 对象组成的RDD,附带包括每列数据类型的结构信息。ROW对象是支队基本数据类型的数组的封装。 ROW对象:表示DataFrame中的记录。本质是一个定长的字段数组。Spark将RDD转换成DataFrame的两种方式一、通过反射指定结构类型 通过反射的方式来推断RDD元素中的元数据。因为RDD本身一条数据本身是没有元数_spark java rdd转dataframe

科研工具篇|看完之后能提高你80%的科研工作效率_一般如何学习科研软件-程序员宅基地

文章浏览阅读3.7k次。荀子在《劝学篇》中讲到,”君子性非异也,善假于物也“。在生活中,善用各种工具能够极大的提高我们的效率,在科研工作中亦是如此。今天给大家介绍在科学研究和论文写作自己常用到的“七种武器”,有了它们,高质量的论文的写作将不再是一个难题。1、google scholar做文献调研是一件相当痛苦的事情,因为既要做到“准”,同时又要做到“全”。在常用的文献数据库中逐个去进行检索显然是一件费力不讨好的事..._一般如何学习科研软件

java 异步监听_【servlet3.0新特性】异步监听器实例-程序员宅基地

文章浏览阅读255次。异步监听器用来监听异步处理事件;即“三”中讲到的知识点;此监听器用户servlet3.0异步处理中,此监听器类似于ServletContextListener的机制;只需要实现AsyncListener接口即可;此接口有4个方法:public void onStartAsync(AsyncEvent event)throws IOException;public void onComplete(A..._servlet异步监听

fenix3 hr 中文说明书_佳明 Fenix3 HR中、英文菜单对照 V4.0-程序员宅基地

文章浏览阅读6k次。1.DataScreens数据页面2.Alerts警示/警示光2.WatchFace表盘1.Type类型3.Widgets小工具3.Metronome节拍器12.Timeout省电超时/待机超时/超时1.Apps应用程序1.Run跑步2.其他应用设置雷同略……系统自带的表盘和自己安装的在此处选择在此处设置系统自带和自己安装的小工具的显示或隐藏4.AutoLap自动计..._fenix3hr中文说明书

ubuntu学习篇3——SecureCRT安装与配置_ubuntu terminator和securecrt-程序员宅基地

文章浏览阅读964次。  刚开始学习,若有错误处请指出,共同进步。  QQ 群 号:513683159  软件已上传群里1.软件安装  群文件中。2.查看虚拟机IP地址  这边我是使用“桥接模式”,打开虚拟机后进入终端(快捷键:Ctrl+Alt+T)输入命令:ifconfig,可查询到IP地址:192.168.1.112。3.打开SecureCRT  选择“文件”——》“快速连接(Q)”——》进入菜单界面,输入主机名(IP地址),和用户名——》点击“链接”,得到“The remote system refu_ubuntu terminator和securecrt

随便推点

Java实现文件上传和下载的方法详解_用java实现文件的上传下载-程序员宅基地

文章浏览阅读4.2k次,点赞2次,收藏26次。参考文章:http://blog.ncmem.com/wordpress/2023/09/27/java%e5%ae%9e%e7%8e%b0%e6%96%87%e4%bb%b6%e4%b8%8a%e4%bc%a0%e5%92%8c%e4%b8%8b%e8%bd%bd%e7%9a%84%e6%96%b9%e6%b3%95%e8%af%a6%e8%a7%a3/编写文件上传的方法, 通过MultipartFile类型的参数即可接收上传的文件, 方法形参的名称需要与页面的file域的name属性一致。_用java实现文件的上传下载

MySQL分区管理-程序员宅基地

文章浏览阅读95次。以下是我看MySQL官方文档的时候整理的笔记,仅作参考保留。RANGE,LIST分区管理1:为未分区表创建分区ALTER TABLE trb3 PARTITION BY KEY(id) PARTITIONS 2;2:删除某个分区的数据ALTER TABLE tr DROP PARTITION p2;3:为分区表添加一个分区ALTE..._mysql分区权限

C语言中使用多线程播放游戏背景音乐_winform多线程音乐-程序员宅基地

文章浏览阅读3.7k次,点赞13次,收藏66次。做大一下期期末设计时遇到一个问题,游戏运行时循环播放背景音乐这个情况下,如果音乐播放完毕,加入判断函数判断是否结束,如果结束则重新播放,但是在游戏中,音乐播放完毕到音乐重新开始播放中间会有一个间隙,这个间隙游戏也会卡顿,主函数代码如下:int main(){ //初始化背景音乐 MUSIC bgm; bgm.OpenFile("res/music/bgm.mp3"); //设置屏幕刷新率 int nfps = 120; //初始化全局数据及图形 initgr(); //初始化启动页 _winform多线程音乐

若依前后端分离/微服务版怎样构造免密链接实现其他系统免登录访问_第三方通过地址跳转若依微服务版前端跳过登录页-程序员宅基地

文章浏览阅读2.5k次。场景若依前后端分离版手把手教你本地搭建环境并运行项目:若依前后端分离版手把手教你本地搭建环境并运行项目_BADAO_LIUMANG_QIZHI的博客-程序员宅基地上面在搭建起来前后端分离版的项目后,别的系统要实现通过跳链接的方式直接跳转到使用若依搭建的系统中从而不用登录就能访问系统。注:博客:BADAO_LIUMANG_QIZHI的博客_霸道流氓气质_程序员宅基地关注公众号霸道的程序猿获取编程相关电子书、教程推送与免费下载。实现1、效果2、若依前后端分离版与_第三方通过地址跳转若依微服务版前端跳过登录页

python-matplotlib绘制堆积的条形图-程序员宅基地

文章浏览阅读3.3k次。import matplotlib as mplimport matplotlib.pyplot as pltx=["a","b","c","d","e","f"]y=[2,3,6,7,9,5,]y1=[5,8,9,3,4,6,]plt.xlim(0,20)plt.barh(x,y,align="center",color="r",label="y")plt.barh(x,y1,left..._matlibplot 堆积条形图

【CSS3】:disabled选择器_css3disable-程序员宅基地

文章浏览阅读770次。“:disabled”选择器刚好与“:enabled”选择器相反,用来选择不可用表单元素。要正常使用“:disabled”选择器,需要在表单元素的HTML中设置“disabled”属性。示例演示通过“:disabled”选择器,给不可用输入框设置明显的样式。HTML代码: CSS代码form { mar_css3disable

推荐文章

热门文章

相关标签