org.apache.catalina.core.StandardContext startInternal SEVERE:错误 listenerStart
Posted
技术标签:
【中文标题】org.apache.catalina.core.StandardContext startInternal SEVERE:错误 listenerStart【英文标题】:org.apache.catalina.core.StandardContext startInternal SEVERE: Error listenerStart 【发布时间】:2012-03-01 02:41:19 【问题描述】:我正在尝试在 Tomcat 7 上启动我的 Web 应用程序,但是每当我单击启动按钮时,我都会收到以下错误:
FAIL - 无法启动上下文路径 /Web 处的应用程序
以下行被添加到catalina.log
文件中:
2012 年 2 月 8 日晚上 7:21:01 org.apache.catalina.core.StandardContext startInternal SEVERE: Error listenerStart 2012 年 2 月 8 日晚上 7:21:01 org.apache.catalina.core.StandardContext startInternal SEVERE:上下文 [/Web] 之前的错误导致启动失败
这是如何引起的,我该如何解决?
【问题讨论】:
以前的错误是什么:由于以前的错误,启动失败 @Mike:它们并不总是在 IDE 控制台/日志文件中可见。我不确定为什么,它似乎是某些 Eclipse 版本、某些服务器插件 make/version 和某些 Tomcat 版本的组合。 【参考方案1】:严重:错误 listenerStart
这归结为ServletContextListener
由类上的@WebListener
注释或web.xml
中的<listener>
声明注册,在contextInitialized()
方法中引发了未处理的异常。这通常是由开发人员的错误(错误)引起的,需要修复。例如,NullPointerException
。
完整的异常应该在特定于 webapp 的启动日志以及 IDE 控制台中可见,在您复制粘贴的特定行之前。如果没有,并且您仍然无法通过查看代码来确定异常的原因,请将整个 contextInitialized()
代码放在 try-catch
中,在其中将异常记录到可靠的输出中,然后解释并修复它相应地。
【讨论】:
我面临着同样的问题,你能不能再请一点我可以尝试捕捉 contextInitialized() ,因为日志只给出了一个模糊的消息,我无法将其解释为程序员。作为附加信息,这个问题是在使用 proGuard 混淆后发生的,我确保更新 web.xml applicationContext.xml 以及其他配置 xml。【参考方案2】:我在 Spring Web 应用程序中遇到了完全相同的问题。事实上,我已经通过注释配置注释删除了 spring-security:
// @ImportResource("/WEB-INF/spring-security.xml")
但我忘记删除web.xml
中的相应过滤器:
<!-- 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>
评论过滤器解决了这个问题。
【讨论】:
【参考方案3】:我遇到了类似的问题。 catalina.out 记录了这个日志消息
2013 年 4 月 17 日下午 5:14:46 org.apache.catalina.core.StandardContext 开始 严重:错误 listenerStart
查看tomcat日志目录中的localhost.log(与catalina.out在同一目录下),查看导致此错误的异常。
【讨论】:
在我的情况下,它更像是 localhost.2013-06-06.log,所以 IDEA 中的默认日志查看器没有显示问题所在 您的回答有助于进一步调试。谢谢!【参考方案4】:对于 Intellij Idea,有时会在不同位置生成 localhost.log 文件。例如你可以在 homedirectory\.IntelliJIdea14\system\tomcat 找到它。
如果您使用的是 spring,则以调试模式启动您的服务器,并将调试点放在 org.springframework.context.support.AbstractApplicationContext 的 refresh() 方法的 catch 块中。如果 bean 创建失败,您将能够看到异常。
【讨论】:
【参考方案5】:这可能是由于配置侦听器时发生的多种原因造成的。最好的方法是记录并查看实际错误。您可以通过将logging.properties
文件添加到您的类路径的根目录来执行此操作,其中包含以下内容:
org.apache.catalina.core.ContainerBase.[Catalina].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].handlers = java.util.logging.ConsoleHandler
【讨论】:
【参考方案6】:选择“所有项目”并右键单击
Maven-> 更新项目
【讨论】:
以上是关于org.apache.catalina.core.StandardContext startInternal SEVERE:错误 listenerStart的主要内容,如果未能解决你的问题,请参考以下文章
org.apache.catalina.core.StandardContext startInternal SEVERE:错误 listenerStart
tomcat(11)org.apache.catalina.core.StandardWrapper源码剖析
idea tomcat 启动报错 org.apache.catalina.core.StandardService.initInternal Failed to initialize connecto
gradle问题“main”groovy.lang.MissingPropertyException:没有这样的属性:类的baseDir:org.apache.catalina.core.Standa