myeclipse启动tomcat报错怎么解决,哪位大神帮我看下

严重: Exception starting filter Set Character Encoding
java.lang.ClassNotFoundException: sjf.seafood.bean.SetCharacterEncodingFilter
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:269)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:424)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4072)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4726)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1079)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2013-9-23 9:29:08 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2013-9-23 9:29:08 org.apache.catalina.core.StandardContext start
严重: Context [/spjfdh] startup failed due to previous errors

这是我的一个项目的配置 

<filter> 
<filter-name>Set Character Encoding</filter-name> 
<filter-class>com.****.EncodingFilter</filter-class> 
<init-param> 
<param-name>encoding</param-name> 
<param-value>UTF-8</param-value> 
</init-param> 
</filter> 
<filter-mapping> 
<filter-name>Set Character Encoding</filter-name> 
<url-pattern>/*</url-pattern> 
</filter-mapping>

EncodingFilter 的内容是 


public class EncodingFilter implements Filter { 
private FilterConfig filterConfig = null; 
private String encoding = null; 
private boolean ignore = true; 
public final void init(final FilterConfig arg0) throws ServletException { 
this.filterConfig = arg0; 
this.encoding = filterConfig.getInitParameter("encoding"); 
String value = filterConfig.getInitParameter("ignore"); 
if (value == null) { 
this.ignore = true; 
} else if (value.equalsIgnoreCase("true")) { 
this.ignore = true; 
} else if (value.equalsIgnoreCase("yes")) { 
this.ignore = true; 
} else { 
this.ignore = false; 


public final void doFilter(final ServletRequest request, 
final ServletResponse response, final FilterChain chain) 
throws IOException, ServletException { 
if (ignore || (request.getCharacterEncoding() == null)) { 
String encoding1 = selectEncoding(request); 
if (encoding1 != null) { 
request.setCharacterEncoding(encoding1); 


try { 
chain.doFilter(request, response); 
} catch (Exception e) { 
e.printStackTrace(); 
} finally { 
try { 
//如果你没用hibernate 把这部分删除就行了 HibernateSessionFactory.closeSession(); 
} catch (Exception e) { 



public final void destroy() { 
this.encoding = null; 
this.filterConfig = null; 

protected final String selectEncoding(final ServletRequest request) { 
return (this.encoding); 

}

对比着改你的配置,应该是你的配置错了

追问

我看过了SetCharacterEncodingFilter.java没有报错,也没有配置错,还有没有其它的原因呢

追答

严重: Error filterStart 《《你这不就是拦截启动报错吗?
主要看下web.xml里面的配置

别的原因可能是你电脑抽风,重启下试试

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-23

根据最上面的提示,启动过滤器的时候出错,可以定位到类

然后第二行ClassNotFoundException。。。是没有找到相应的类

分析可以有两种可能,

    配置文件里的过滤器标签filter内容写错了,看看类名什么的对不对

    相应的类没有实装上

追问

我看过了SetCharacterEncodingFilter.java没有报错,也没有配置错,还有没有其它的原因呢

追答

由于java访问的是编译后的class文件,查看一下是不是编译后的文件放置路径不对

本回答被网友采纳
第2个回答  2013-09-23
总是看到这种无脑提问。
严重: Exception starting filter Set Character Encoding
java.lang.ClassNotFoundException: sjf.seafood.bean.SetCharacterEncodingFilter

这两段话,你分别拿去百度google一下,看看是不是一大堆。
百度知道给你的是鱼,你自己就不会渔了!
第3个回答  2013-09-23
是不是包名写错了,你最好仔细检查一下
第4个回答  2013-09-23
没有找到类 说明是由于 tomcat缺少文件
相似回答