org.apache.catalina.core.StandardContext startInternal SEVERE:错误listenerStart

我正在尝试在Tomcat 7上启动我的Web应用程序,但是每当我点击开始button时,就会出现以下错误:

失败 – 上下文path/ Web应用程序无法启动

并将下面的行添加到catalina.log文件中:

2012年2月8日7:21:01 org.apache.catalina.core.StandardContext startInternal SEVERE:错误listenerStart 2012年2月8日下午7:21:01 org.apache.catalina.core.StandardContext startInternal SEVERE:Context [/ Web ]由于以前的错误,启动失败

这是如何造成的,我该如何解决?

我有一个类似的问题。 catalina.outlogging了这个日志消息

2013年4月17日下午5时14分46秒org.apache.catalina.core.StandardContext开始SEVERE:错误listenerStart

检查tomcat日志目录 (与catalina.out相同的目录)中的localhost.log ,查看导致此错误的exception。

严重:错误listenerStart

这可以归结@WebListener类的@WebListener注释或web.xml<listener>声明注册的ServletContextListenercontextInitialized()方法内引发了未处理的exception。 这通常是由开发人员的错误(一个错误)引起的,需要修复。 例如,一个NullPointerException

完全的exception应该在特定于webapp的启动日志以及IDE控制台中可见, 然后才能进行拷贝。 如果没有,并且您仍然无法通过查看代码来查找exception的原因,请将整个contextInitialized()代码放在try-catch其中将exceptionlogging到可靠的输出,然后解释并修复因此。

对于Intellij Idea有时在不同位置生成的localhost.log文件。 例如,您可以在home目录\ .IntelliJIdea14 \ system \ tomcat中find它。

如果你正在使用spring,那么在debugging模式下启动你的服务器,并把debugging点放在org.springframework.context.support.AbstractApplicationContext的refresh()方法的catch块中。 如果bean创build失败,您将能够看到exception。

我在Spring Web应用程序中面对完全相同的问题。 实际上,我通过注释configuration注释去除了spring-security:

 // @ImportResource({"/WEB-INF/spring-security.xml"}) 

但我忘记了在web.xml删除相应的filter:

 <!-- Filters --> <filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> </filter> <filter-mapping> <filter-name>springSecurityFilterChain</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 

评论filter解决了这个问题。

这可能是由于configuration侦听器时发生的多种原因造成的。 最好的方法是logging并查看实际的错误。 您可以通过将logging.properties文件添加到类path的根目录下并使用以下内容来执行此操作:

org.apache.catalina.core.ContainerBase.[Catalina].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].handlers = java.util.logging.ConsoleHandler

select“所有项目”,然后右键单击

Maven->更新项目