欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用Spring出现的错误: BeanFactory not initialized or already closed - call 'refresh' before accessin

程序员文章站 2024-02-22 11:04:22
...

使用Spring出现如下错误:

严重: Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext

 

只要出现如下的错误一定是和ApplicationContext.xml(Spring的配置文件)有关的,就是其获取其配置文件出了问题。

  • 1.使用此种方法可能是其配置文件名拼写错误或是没写。也就是ApplicationContext.xml(当然你也可以起其他名字)
ApplicationContext ac = new ClassPathXmlApplicationContext("ApplicationContext.xml");
  • 2.让tomcat在启动时,直接通过web.xml加载ApplicationContext.xml,查看自己配的web.xml是否正确?我就是这里错误。
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  <!-- 上下文参数 -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<!-- spring配置文件 -->
		<param-value>classpath:AirportServlet</param-value>
	</context-param>
	
	<!-- 封装了一个监听器,加载Spring的配置 -->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
</web-app>

 

上一篇: 通过Java代码技巧改善性能

下一篇: