NoSuchBeanDefinitionException: No bean named 'usersService' is defined

简介: p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px 'Helvetica Neue'; color: #454545}span.s1 {text-decoration: underline}org.

org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'usersService' is defined

严重: Exception starting filter AuthFilter

org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'usersService' is defined

at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:638)

at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1159)

at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:282)

at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)

at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:973)

at com.wanyu.frame.base.AuthFilter.init(AuthFilter.java:79)

at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279)

at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260)

at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105)

at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4700)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5340)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)

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)

相关代码:

	@Override
    public void init(FilterConfig filterConfig) throws ServletException {
        // 初始化方法
		ServletContext sc = filterConfig.getServletContext(); 
        XmlWebApplicationContext cxt = (XmlWebApplicationContext)WebApplicationContextUtils.getWebApplicationContext(sc);
        
        if(cxt != null && cxt.getBean("usersService") != null && logManager == null)
        	logManager = (LogManager) cxt.getBean("logManager");
    }

错误原因:

项目使用 springframework ,发生这个错误是因为没有找到名称为'usersService' 的 bean;

1、名称写错了,你想获取的根本不是它;

2、名称写错了,你想获取它但不知道它的确切名称;

3、名称没有错,但是对应的 bean ,java 类上忘记了添加注解,如:@Component,@Service,@Controller,@Repository

解决方法:

嗯嗯,知道了错误的原因,解决方法其实已经很明确了。

我这里发现这个错误就是第一个原因,我想获取的根本不是它。

另外:

代码中的 cxt.getBean("usersService") != null 判断是没有意义的;

如果不存在会引发异常;

要么就加上 异常处理;

======================文档信息======================

版权声明:非商用自由转载-保持署名-注明出处

署名(BY) :testcs_dn(微wx笑)

文章出处:[无知人生,记录点滴](http://blog.csdn.NET/testcs_dn)

==============欢迎关注我的个人微信订阅号(微wx笑)==========




目录
相关文章
|
XML Ubuntu Linux
探索Linux中的`busctl`命令:DBus的瑞士军刀
`busctl`是Linux下管理DBus消息总线的命令行工具,用于查看、监听和控制DBus服务。
|
网络协议 Ubuntu Linux
无公网IP内网穿透使用vscode配置SSH远程ubuntu随时随地开发写代码-2
无公网IP内网穿透使用vscode配置SSH远程ubuntu随时随地开发写代码
|
Python
一日一技:用Python如何正确开发命令行交互程序
一日一技:用Python如何正确开发命令行交互程序
405 0
|
云安全 弹性计算 运维
【视频】-《ECS 进阶概念-安全》 | 学习笔记(二)
快速学习【视频】-《ECS 进阶概念-安全》
【视频】-《ECS 进阶概念-安全》 | 学习笔记(二)
|
9天前
|
数据采集 人工智能 安全
|
4天前
|
机器学习/深度学习 人工智能 前端开发
构建AI智能体:七十、小树成林,聚沙成塔:随机森林与大模型的协同进化
随机森林是一种基于决策树的集成学习算法,通过构建多棵决策树并结合它们的预测结果来提高准确性和稳定性。其核心思想包括两个随机性:Bootstrap采样(每棵树使用不同的训练子集)和特征随机选择(每棵树分裂时只考虑部分特征)。这种方法能有效处理大规模高维数据,避免过拟合,并评估特征重要性。随机森林的超参数如树的数量、最大深度等可通过网格搜索优化。该算法兼具强大预测能力和工程化优势,是机器学习中的常用基础模型。
305 164

热门文章

最新文章