No WebApplicationContext found: no ContextLoaderListener registered

本文介绍了在调试老项目的Spring框架代码时遇到的“NoWebApplicationContext found”错误,并提供了详细的解决方案,包括确保spring配置文件放置正确、检查web.xml配置以及启用ContextLoaderListener监听器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

调试老项目代码时,突然发现下面语句报错。

 ServletContext application = ServletActionContext.getRequest().getSession().getServletContext();
 WebApplicationContext ctx=WebApplicationContextUtils.getRequiredWebApplicationContext(application);

 

其中WebApplicationContextUtils.getRequiredWebApplicationContext(application);报错

   java.lang.IllegalStateException: No WebApplicationContext found: no ContextLoaderListener registered?

 

遇到这个问题的解决方案如下:

1 首先检查将自己spring的xml 文件放在WEB-INF目录下

2 其次在web.xml中检查两段话是否存在或被注释,经查我的web.xml中发现<listener>被注释掉导致此错误

 

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/classconfig.xml,/WEB-INF/ldapcontext.xml</param-value>
 </context-param>
 
  <listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>

 

其中classconfig.xml和ldapcontext.xml是我的spring配置文件名。

3 重启tomcat

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值