zoukankan      html  css  js  c++  java
  • 解决Eclipse启动Tomcat时报Error loading WebappClassLoader错误

    最近新建了一个JSF项目(网上查到用Struts,Spring MVC也会如此),配置好以后用Eclipse启动Tomcat报了如下错误:严重: Error loading WebappClassLoader

    1.   context: /jsf2nd  
    2.   delegate: false  
    3.   repositories:  
    4.     /WEB-INF/classes/  
    5. ----------> Parent Classloader:  
    6. org.apache.catalina.loader.StandardClassLoader@1172e08  
    7.  javax.faces.webapp.FacesServlet  
    8. java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet  
    9.     at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)  
    10.     at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)  
    11.     at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1128)  
    12.     at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1026)  
    13.     at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4421)  
    14.     at org.apache.catalina.core.StandardContext.start(StandardContext.java:4734)  
    15.     at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)  
    16.     at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)  
    17.     at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)  
    18.     at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)  
    19.     at org.apache.catalina.core.StandardService.start(StandardService.java:525)  
    20.     at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)  
    21.     at org.apache.catalina.startup.Catalina.start(Catalina.java:595)  
    22.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)  
    23.     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)  
    24.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)  
    25.     at java.lang.reflect.Method.invoke(Method.java:597)  
    26.     at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)  
    27.     at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)  
    28. 2011-12-8 9:11:27 org.apache.catalina.core.StandardContext loadOnStartup  
    29. 严重: Servlet /jsf2nd threw load() exception  
    30. java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet  
    31.     at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)  
    32.     at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)  
    33.     at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1128)  
    34.     at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1026)  
    35.     at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4421)  
    36.     at org.apache.catalina.core.StandardContext.start(StandardContext.java:4734)  
    37.     at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)  
    38.     at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)  
    39.     at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)  
    40.     at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)  
    41.     at org.apache.catalina.core.StandardService.start(StandardService.java:525)  
    42.     at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)  
    43.     at org.apache.catalina.startup.Catalina.start(Catalina.java:595)  
    44.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)  
    45.     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)  
    46.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)  
    47.     at java.lang.reflect.Method.invoke(Method.java:597)  
    48.     at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)  
    49.     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.pluginsorg.eclipse.wst.server.core mp3wtpwebappsjsf2nd WEB-INFlib,发现果然少了两个jar包,将之放入后问题就解决了。

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

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

  • 相关阅读:
    松翰单片机_SN8F570310——INTR
    松翰单片机_SN8F570310——EINT
    松翰单片机_SN8F570310——PWM
    松翰单片机_SN8F570310——SPI
    松翰单片机_SN8F570310——IIC
    松翰单片机_SN8F570310——UART
    全志_input
    全志_ADC驱动
    git随笔
    全志_外部中断
  • 原文地址:https://www.cnblogs.com/adrianlamo/p/3406098.html
Copyright © 2011-2022 走看看