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

所属分类: 电脑基础 / 故障排除 阅读数: 103
收藏 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

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

电脑开机蓝屏 提示bd0004.sys蓝屏的解决办法

电脑开机蓝屏怎么办?笔记本电脑Win7旗舰版无法开机。 安全模式可以进。 还原上次的安全配置进过一次,再关机就又这样了。中途还蓝屏,下面我们一起来看看解决办法吧
收藏 0 赞 0 分享

windows进入系统安全模式时蓝屏怎么办?

windows进入系统安全模式时蓝屏怎么办?不管是普通进入系统还是进入系统安全模式都蓝屏。有时用着电脑正用着忽然蓝屏。下面我们一起来看看解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

spoolsv.exe产生了错误自动关闭该怎么办?

spoolsv.exe产生了错误自动关闭该怎么办?在windows系统下打印,出现spoolsv.exe产生错误,会被windows关闭,需要重新启动程序。从日志里能看到系统报错,该怎么解决呢?请看下文
收藏 0 赞 0 分享

电脑无法启动此程序 因为计算机中丢失LIBEAY32.DLL的解决办法

电脑无法启动此程序,因为计算机中丢失LIBEAY32.DLL是怎么回事?一般是被杀毒软件删除被感染的文件,就会导致相关文件缺失。下面分享解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

电脑刚开机就提示自动关机该怎么办?

电脑刚开机就提示自动关机该怎么办?有用户反映说在系统开机的时候弹出对话框提示“系统即将关机,请保存所有正在运行的工作,然后注销,未保存的改动将会丢失,自动关机是由NT AUTHORITY|SYSTEM 初始的”,这是怎么回事呢,下面分享解决办法
收藏 0 赞 0 分享

电脑没法上网网卡没有IP怎么办?

电脑没法上网网卡没有IP怎么办?网卡当然是用来传输网络数据的,但是有时候不知道为什么会没有ip。排除网线没有问题肯定是网卡的原因。当然没有ip原因很多,具体请看下文
收藏 0 赞 0 分享

电脑网速为什么变慢?从这里找原因

很多朋友的网速有时快,有时很慢,有什么方法可以解决!其实我们只要选择好稳定的路由,网络速度问题就可以大大提高
收藏 0 赞 0 分享

电脑中经常重启后蓝屏如何解决

当我们的电脑出现蓝屏的情况时,就需要我们对电脑做出相关的解决方案,首先是重启电脑。
收藏 0 赞 0 分享

游戏不顺畅,卡顿的显卡设置方法

今天小编就教你如何正确安装显卡驱动程序,希望能给大家提供点帮助。
收藏 0 赞 0 分享

文件夹右键属性与双击打开的属性不一样怎么办?

文件夹右键属性与双击打开的属性不一样怎么办?今天在统计信息的时侯,发现了右键文件夹属性与直接打开文件夹统计数据不一致。虽然用起来没问题,但是心里还是不舒服,下面分享解决办法
收藏 0 赞 0 分享
查看更多