当我输入这些行时:
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
我的应用程序根本无法加载。当我去 http://localhost:8080/app它没有加载。但是,当我删除这些行时,它会正确加载。我已经将包含 org.springframework.web.context.ContextLoaderListener
的必要库放在 ./app/WEB-INF/lib 中。
我的设置是 Tomcat 5.5。上下文参数已设置:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:./springContext.xml</param-value>
</context-param>
没有显示堆栈跟踪。错误信息是:
03-Nov-2010 10:21:48 INFO HostConfig:863 - Deploying web application archive
wma.war
03-Nov-2010 10:21:49 ERROR StandardContext:4253 - Error listenerStart
03-Nov-2010 10:21:49 ERROR StandardContext:4280 - Context [/wma] startup failed
due to previous errors
谢谢
将
最佳答案
您的 contextConfigLocation
设置为一个非常特殊的值,classpath:./springContext.xml
。很清楚那是什么意思。您是否在类路径的根目录中寻找 springContext.xml
文件?如果是这样,那么您应该使用 classpath:springContext.xml`,因为类路径资源引用总是相对于类路径的根。
如果失败了,再看看Tomcat的DEBUG级别的日志,Spring在DEBUG级别的启动过程中相当冗长,它应该会告诉你哪里出了问题。奇怪的是它没有抛出异常,不过我通常希望它抛出异常。
关于Spring web.xml 由于 <listener> 无法加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4075580/