Eclipse启动Tomcat时报Error loading WebappClassLoader错误的解决方法

所属分类: 电脑基础 / 故障排除 阅读数: 56
收藏 0 赞 0 分享

context: /jsf2nd 
  delegate: false 
  repositories: 
    /WEB-INF/classes/ 
----------> Parent Classloader: 
org.apache.catalina.loader.StandardClassLoader@1172e08 
 javax.faces.webapp.FacesServlet 
java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet 
    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.StandardWrapper.loadServlet(StandardWrapper.java:1128) 
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1026) 
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4421) 
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4734) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057) 
    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(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) 
2011-12-8 9:11:27 org.apache.catalina.core.StandardContext loadOnStartup 
严重: Servlet /jsf2nd threw load() exception 
java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet 
    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.StandardWrapper.loadServlet(StandardWrapper.java:1128) 
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1026) 
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4421) 
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4734) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057) 
    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(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) 

网上搜了几种解决方案:

1、关掉myeclipse,把原来的tomcat换掉,如果是安装版的就卸载,重新放一个tomcat,启动myeclipse,配置tomcat,部署,再启动tomcat,一切OK。
2、之前jar包我是通过Build path -> Configure build path-> Add External JARs的方式添加的,程序编译,Tomcat启动都很正常,没有错误。可是一访问jsp页面就报上述错误。 苦思不得其解,但看了错误信息说是找不到org.springframework.web.servlet.DispatcherServlet类,所以我就干脆将spring.jar,spring-webmvc.jar等jar包通通手工添加到/WEB-INF/lib目录下,并且将default output folder值改为projectName/WebContent/WEB-INF/classes 问题就得以解决了。

这两种解决方案试了都不行,但是大体了解到可能是jar包没有导入进去,所以进了eclipse的工程目录,找到对应的存放jar包的目录:.metadata\.plugins\org.eclipse.wst.server.core\tmp3\wtpwebapps\jsf2nd\WEB-INF\lib,发现果然少了两个jar包,将之放入后问题就解决了。

错误原因:至今未能查明究竟是哪个地方出错了才使得eclipse不能将jar包放到eclipse的tomcat插件下面。

可能的几个原因:
1、我的eclipse选择的默认编译是jdk1.5,而这个项目用的是Tomcat6,
2、我的Eclipse里面默认设置的tomcat的编译器也是1.5

更多精彩内容其他人还在看

电脑开机蓝屏代码为0x000000ED怎么解决?

电脑开机蓝屏代码为0x000000ED怎么解决?电脑开机出现蓝屏代码STOP(停止):0x000000ED,不能进入操作系统。下面分享解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

电脑开机蓝屏停机码0×0000002E的解决办法

在使用windows系统时,突然出现蓝屏,蓝屏代码消息显示的是0×0000002E。这让他不知所措,这种情况该如何应对?下面分享电脑开机蓝屏的原因以及解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

电脑蓝屏停机码 D1的解决方法

蓝屏截图中最重要的是停机码,这是查询蓝屏的重要依据。其次,如果蓝屏讯息中还有导致蓝屏故障的文件名,那么这个范围就缩小很多,甚至可以定性了,从而有了解决问题的思路和办法。下面小编就为大家介绍电脑蓝屏停机码 D1的解决方法,一起来看看吧
收藏 0 赞 0 分享

电脑蓝屏停机码1A的故障解决方法介绍

蓝屏停机码,只代表了蓝屏故障的起因和出错范围,所以,同样一个蓝屏停机码,有可能会有不同的故障原因,具体问题还要根据前因后果具体分析,下面小编为大家介绍电脑蓝屏停机码1A的故障解决方法,来看看吧
收藏 0 赞 0 分享

电脑蓝屏故障:停机简码1~10的解决方法

蓝屏截图中最重要的是停机码,这是查询蓝屏的重要依据。下面小编就为大家介绍,电脑蓝屏故障:停机简码1~10的解决方法,来看看吧
收藏 0 赞 0 分享

plug and play即插即用服务启动不了怎么办?

plug and play(即插即用)服务启动不了怎么办?即插即用服务是一个非常重要的服务,需要开启。也有时候出错,并不是因为服务未开启,而是驱动程序异常所致,只是表现在即插即用服务未开启,下面分享解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

电脑开机长鸣报警该怎么办?

电脑开机长鸣报警该怎么办?如果你的电脑开机事一直长鸣报警,首先你就要想到是内存的问题,既然知道原因,下面我们一起啦看看解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

电脑总重启提示Dcom server process服务意外终止怎么办?

电脑总重启提示Dcom server process服务意外终止怎么办?电脑老是显示重启:Plug and Play, Dcom server process, power 服务意外终止,windows必须立即重新启动。 这是一个叫做MBR的木马程序弄的,下面分享解决办法
收藏 0 赞 0 分享

无法连接至定点装置Synaptics(系统是win7)

这篇文章主要介绍了无法连接至定点装置Synaptics(系统是win7)的解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

显卡风扇在转动但是插上VGA没有显示的详细解决办法

显卡风扇在转动,但是插上VGA没有显示怎么办?显卡风扇在转动,但是插上VGA数据线没有显示,插上独立显卡就可以了。那么这种情况怎么办呢,下面分享解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多