昨天部署web应用到Tomcat之后,无法成功启动,并且控制台没有详细的错误信息,
顶多就两行提示信息,例如:
严重: Error listenerStart
严重: Context [/lizongbo] startup failed due to previous errors
或者
严重: Error filterStart
org.apache.catalina.core.StandardContext start
严重: Context startup failed due to previous errors
查找logs目录下的信息,除了这两句话,也没别的辅助内容.
给查错带来了困难,在这种情况下,是因为Tomcat自身的默认日志没有将一些错误信息输出到控制台或文件,
这个时候则需要配置Tomcat自身的log,启用详细的调试日志.
在Tomcat 5.5和Tomcat 6.0中的配置基本一样,只是相关文件放的目录有所不同.
首先需要准备的文件为:
1.log4j.jar , 下载地址 : http://www.apache.org/dist/logging/--escaped_anchor:e0a22b16b97ca8dedb8d5b8c15ffbcaa--/1.2.15/apache-log4j-1.2.15.zip
2.Tomcat 5.5所需的 commons-logging.jar,下载地址: http://www.apache.org/dist/commons/logging/binaries/commons-logging-1.1.zip
3.log4j配置文件:
log4j.properties
配置内容为:
log4j.rootLogger=ERROR,R
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=[%p]%t-%c-%m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${catalina.home}/logs/lizongbo.log
log4j.appender.R.MaxFileSize=10MB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=[%p]%t-%c-%m%n
log4j.logger.org.apache.catalina=INFO,R,CONSOLE
#日志级别不能太低,如果配置为debug的话,输出的日志信息太多,导致tomcat启动非常的慢.
4.Tomcat 6.0所需的juli替换文件:
http://www.apache.org/dist/--escaped_anchor:079305423cce36d6691457475e081123--/tomcat-6/v6.0.18/bin/extras/tomcat-juli-adapters.jar
http://www.apache.org/dist/--escaped_anchor:079305423cce36d6691457475e081123--/tomcat-6/v6.0.18/bin/extras/tomcat-juli.jar
在Tomcat6.0中,
将tomcat-juli-adapters.jar,log4j-1.2.15.jar,log4j.properties复制到D:\Java\ApacheTomcat6.0.14\lib下面.
将tomcat-juli.jar复制到D:\Java\apache-tomcat-6.0.14\bin\下面.
然后启动tomcat,就可以在D:\Java\apache-tomcat-6.0.14\logs下看到lizongbo.log了.
在 Tomcat5.5中,
将commons-logging-1.1.jar,log4j-1.2.15.jar,复制到D:\Java\apache-tomcat-5.5.25\common\lib下面.
将log4j.properties复制到D:\Java\apache-tomcat-5.5.25\common\classes下面.
然后启动tomcat,就可以在D:\Java\apache-tomcat-5.5.25\logs下看到lizongbo.log了.
在这个时候,再通过日志文件来分析,则会发现出现这种错误的情况可能有:
(以下是我遇到的出错情况,大多是些低级错误)
1.webapps要用到的classe文件根本没有复制到WEB-INF/classes目录下面
(java.lang.NoClassDefFoundError,而这个信息可能默认没输出到控制台,尤其是用了spring的,昨天就是这个粗心的低级错误)
2.要用到lib文件没有复制完,缺少lib
3.lib下的同一个库的jar文件存在多个不同版本,引起版本冲突.
4.lib下的jar与tomcat版本不相对应(我遇到的问题是web应用在Tomcat5.5上运行正常,换到Tomcat6.0上就出错,
例如一个用了struts的webapp在Tomcat 6上报下面的错误
“Parse Fatal Error at line 17 column 6: The processing instruction
target matching “[xX][mM][lL]” is not allowed” )
愿意看英文的可以参考官方网站说明:
http://tomcat.apache.org/tomcat-6.0-doc/logging.html
http://tomcat.apache.org/tomcat-5.5-doc/logging.html
转载出处:
http://hi.baidu.com/zhy65991/blog/item/554529d2950e730c3af3cfb4.html
分享到:
相关推荐
通过上述步骤,通常可以解决Tomcat启动时出现的“Error listenerStart”问题。需要注意的是,根据具体情况可能还需要进一步排查其他可能的原因,如数据库连接配置、环境变量设置等。此外,保持良好的编码习惯和项目...
总之,"严重: Error listenerStart" 错误提示需要我们深入源码,检查日志配置,分析可能的依赖冲突,以及对监听器代码进行调试,以找到并解决问题。在这个过程中,熟悉Java Web应用的生命周期、日志框架的工作原理...
【Listener的原理与应用】 Listener在Tomcat中扮演着至关重要的角色,它们是Java Servlet规范的一部分,用于监听特定事件...正确理解和使用Listener能够提高程序的灵活性和效率,但同时也需要谨慎防止潜在的安全问题。
Event Listener Error(解决方案).md
通过设置`level`为`FINE`,你可以获取更详细的日志信息,这对于定位和解决问题非常有帮助。 在应用了这个配置后,重新启动Tomcat,错误信息将会被记录并显示在控制台,这样就可以更容易地找到问题所在。如果错误与...
其中,`ext-all.js`适用于生产环境,而`ext-all-debug.js`则更适合开发环境,因为它包含了调试信息,有助于发现和解决问题。 2. **ExtJS核心文件夹介绍**: - `locale`: 存放语言包文件,如`ext-lang-zh_CN.js`...
将`URIEncoding`设置为`utf-8`可以确保所有接收到的URL参数都按照UTF-8编码进行解码,避免了中文或其他多字节字符的解析问题。例如: ```xml URIEncoding="utf-8" connectionTimeout="20000" redirectPort=...
下面是一些可能有助于解决问题的方法: 1. 确保Maven依赖项正确配置:在pom.xml文件中,确保已经正确地配置了所有需要的依赖项,包括Spring、Struts2、iBatis等框架的依赖项。 2. 部署Maven依赖项到Tomcat:在...
- 源码:如果你正在对Tomcat进行深入研究或自定义构建,理解源码中的AprLifecycleListener类和其初始化过程有助于解决问题。 - 工具:解决问题可能需要使用一些工具,如编译器(如GCC)来编译APR库,或使用系统包...
【Tomcat容器攻防笔记之Listener内存马】 在网络安全领域,尤其是系统安全和漏洞分析方面,攻击者和防御者之间的较量日益激烈。随着技术的进步,包括AI和网络信息安全在内的多种安全措施已经部署,如WAF动态防御、...
- 在安装和配置过程中,可能会遇到依赖库或版本兼容性的问题,需要根据错误提示进行排查和解决。 通过以上步骤,你将成功地在Tomcat服务器上安装并启用了APR和Tomcat Native支持,从而提升其性能和稳定性。
Apache Tomcat是一款广泛应用的开源Java Servlet容器,它实现了Java EE Web应用程序规范,特别是Servlet和JavaServer Pages (JSP) 技术。...遇到下载问题时,我们可以采取多种方式解决,确保顺利获取并使用Tomcat。
每个Context都有自己的配置,包括Servlet、Filter、Listener等。开发者可以通过ContextConfigListener来监听Web应用的初始化过程,实现自定义配置。 3. **Connector**: 连接器组件是Tomcat接收和处理HTTP请求的部分...
本完全解决方案将详细解析这个问题及其解决步骤。 `tcnative-1.dll`是Apache Tomcat的本地库,它是一个实现了OpenSSL接口的库,由Apache Tomcat团队维护。它的主要作用是提供对Java Native Access (JNA) 或者Java ...
同时,它还支持注解配置,使得Servlet、Filter和Listener的配置更为简洁。 2. **Jasper增强**:Tomcat 7的Jasper引擎对JSP编译进行了优化,支持JSP 2.2标准,提供了更多的错误检查和改进的开发体验。 3. **更好的...
为了帮助开发者解决这个问题,本文将介绍 Tomcat 优化方案的七个方面,分别是增加 JVM 堆内存大小、修复 JRE 内存泄漏、线程池设置、压缩、数据库性能调优、Tomcat 本地库和其它选项。 增加 JVM 堆内存大小 Tomcat...
此外,监控Tomcat的运行状态,及时发现并解决问题,也是保证其高效运行的关键。 在安全方面,Tomcat有多种措施来保护服务器,比如限制远程管理接口的访问,使用SSL/TLS加密通信,以及定期更新以修补已知的安全漏洞...
理解这些组件的工作原理,将有助于我们在实际开发中遇到问题时,能够迅速定位和解决。 总的来说,深入研究Tomcat7源码不仅能够提升我们的技术能力,还能让我们更好地理解和优化Web应用的性能。通过学习源码,我们...
在Windows环境下部署Apache Tomcat服务器是一项常见的任务...遇到问题时,及时查看日志,分析错误信息,调整配置,通常能够解决问题。通过熟练掌握这些步骤和技巧,可以更高效地在Windows环境中部署和管理Tomcat项目。