08-06
10

TOMCAT 严重: Error filterStart

今天在eclipse+myeclipse+tomcat5 下,写个中文乱码转码filter,就报
2007-3-13 17:43:46 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2007-3-13 17:43:46 org.apache.catalina.core.StandardContext start
严重: Context startup failed due to previous errors
错误,所属项目也就启动不了,web。xml配置为 :
<filter>
    <filter-name>CharsetEncodingFilter</filter-name>
    <filter-class>com.changyou.filter.CharsetEncodingFilter</filter-class>
    <init-param>
     <param-name>encoding</param-name>
     <param-value>UTF-8</param-value>
    </init-param>
   </filter>
   <filter-mapping>
    <filter-name>CharsetEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
   </filter-mapping>
百思不得其解,问题出在哪里。
在google搜索,有人提出这么几个解决方案:
1、试着把tomat/server/lib目录下的commons-digester.jar,commons-beanutils.jar拷贝到common/lib/目录   --经测试不行
2、里有个文章说tomcat里的bug,没有实现javax.servlet.Filter的Filter会报这样的错误,看来tomcat在启动就初始化Filter实例,但是在filter中又没有看到那段代码没有实现Filter,或者有代码在启动时没有实例化。--没发现问题。

这个问题网上也得不到解决方案,真是郁闷得紧
****************************************
终于解决了,原来是在web.xml初始化参数过程少初始化了一个,导致filter启动失败。大汗~~~~

如果以后出现tomcat 严重: Error filterStart 错误,一般原因为:

1、xml配置失误(如我)

2、filter中某段代码为实例化(这个情况是出现最多的,要仔细检查)

3、试着把tomat/server/lib目录下的commons-digester.jar,commons-beanutils.jar拷贝到common/lib/目录,有些包在部署是没有被包含(不过我用的tomcat5.5.23版已经将这两个包放在了share目录下,可供服务器和应用共同调用。)

总之,首先都应该仔细查看%tomcat_home%/logs目录下的当天的日志文件(该目录下的日志是每天生成一个),其中服务器启动出错的详细堆栈信息会在其中,然后再按方向找方法。


文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: TOMCAT
相关日志:
评论: 0 | 引用: 0 | 查看次数: 2197
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭