SEVERE: Error loading WebappClassLoader
context: /ExtGantt
delegate: false
repositories:
/WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.StandardClassLoader@a193fe
com.gtt.servlet.TaskServlet
java.lang.ClassNotFoundException: com.gtt.servlet.TaskServlet
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1493)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1095)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:809)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:722)
===============================================================================
这个该死的问题困扰了我一周,原因很明确,就是找不到编译好的class文件,刚开始以为是没有servlet-api.jar,后来各种添加,在项目中添加,在jdk中添加,统统都失败了。
最后终于解决了,解决方法如下:
新建一个项目,把原来项目的内容复制进去,右键——>Properties——>java build path ——>source Default output folder ,注意class类的输出路径,根据你项目部署的情况修改路径,有的默认是项目名/build/classes,有的是项目名/WebRoot/WEB-INF/classes,在tomcat的server.xml文件中部署项目时注意,如果你的类输出文件夹设置的是是项目名/build/classes,那么在server.xml中配置为 <Context docBase="ext" path="" reloadable="true" source="org.eclipse.jst.jee.server:ext"/></Host>,最开始我一直配置的是
<Context docBase="E:\workspace\ext\WebRoot" path="/" reloadable="true">
</Context>
项目根本就找不到build下的classes文件夹。
现在对eclipse部署还不是特别明白原理,有待深究。。。。。。