2012-04-28 113 views
0
Apr 28, 2012 3:48:02 PM org.apache.catalina.core.ApplicationContext log 
SEVERE: Error loading WebappClassLoader 
    context: /hello 
    delegate: false 
    repositories: 
----------> Parent Classloader: 
[email protected] 
HelloServlet 
java.lang.ClassNotFoundException: HelloServlet 
    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.allocate(StandardWrapper.java:827) 
    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:293) 
    at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:877) 
    at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:594) 
    at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1675) 
    at java.lang.Thread.run(Unknown Source) 
Apr 28, 2012 3:48:02 PM org.apache.catalina.core.StandardWrapperValve invoke 
SEVERE: Allocate exception for servlet HelloServlet 
java.lang.ClassNotFoundException: HelloServlet 
    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.allocate(StandardWrapper.java:827) 
    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:293) 
    at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:877) 
    at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:594) 
    at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1675) 
    at java.lang.Thread.run(Unknown Source) 
Apr 28, 2012 3:48:23 PM org.apache.catalina.core.StandardWrapperValve invoke 
INFO: Servlet HelloServlet is currently unavailable 

回答

0

檢查$ TOMCAT_HOME $/webapps /目錄你好/ WEB-INF/classes文件夾,這是否有您的HelloServlet的編譯版本(HelloServlet.class) 。

什麼是HelloServlet類的完全限定包名 - 您需要確保您的web.xml引用了完全限定名(如果您的HelloServlet具有xyx的包定義,那麼web.xml需要引用x.y.z.HelloServlet

+0

我的HelloServlet.class文件位於webapps/hello/WEB-INF/classes/HelloServlet.class中。 – 2012-04-30 05:37:10

+0

我在標籤 hello.HelloServlet 中寫過,它仍然給出相同的錯誤。 – 2012-04-30 05:44:41

+0

您的類需要位於'webapps/hello/WEB-INF/classes/hello/HelloServlet.class'中。 – 2012-04-30 10:16:30

0

1 - 轉到項目中的web.xml文件。

2 - 請參閱標記<servlet-class>並確保它應採用以下格式。 eclipsePackage.JavaClass

這個問題很具描述性,它無法加載指定的類,因爲它不能locate它。該位置來自web.xml。確保路徑在提到的標籤中是正確的。