今天一个项目启动的时候报错:No WebApplicationContext found: no ContextLoaderListener registered?web
所更改的变更就是在webxml中增长了一个一个来代理类,用这个代理类实现原先的一个filter功能
spring
<filter> <filter-name>ssoFilter</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> <init-param> <param-name>targetFilterLifecycle</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>targetBeanName</param-name> <param-value>ssoFilter</param-value> </init-param> </filter>
解决方案很简单,增长一个linster
shell
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
ContextLoaderListener会在启动web容器的时候自动装配springapplicationcontext的内容,再webxml.xml配置它,在启动容器的时候就会默认实现他的实现方法。全部的context的文件能够以下配置app
<context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/classes/applicationContext-*.xml </param-value> </context-param>
也可配置多个文件spa
<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:applicationContext-*.xml,/WEB-INF/applicationContext.xml,/WEB-INF/classes/applicationContext-*.xml lt;/param-value> </context-param>