2017-04-25 45 views
0

當我嘗試在Tomcat服務器上運行一個簡單的servlet類時,它會發出此錯誤。無法在tomcat服務器上運行簡單的Servlet。獲取HTTP狀態500 - 實例化servlet類錯誤com.main.Hello錯誤

HTTP Status 500 - Error instantiating servlet class com.main.Hello 

type Exception report 
message Error instantiating servlet class com.main.Hello 
description The server encountered an internal error that prevented it 
from fulfilling this request. 

exception 

javax.servlet.ServletException: Error instantiating servlet class com.main.Hello 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506) 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962) 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:452) 
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1087) 
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) 
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
java.lang.Thread.run(Thread.java:745) 

root cause 

java.lang.ClassNotFoundException: com.main.Hello 
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1892) 
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1735) 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506) 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962) 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:452) 
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1087) 
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) 
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
java.lang.Thread.run(Thread.java:745) 

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.75 logs. 
Apache Tomcat/7.0.75 

我不明白髮生了什麼問題。我已經檢查了我所知道的一切。以XML格式正確映射。下面是XML

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> 
<display-name>Web_Application</display-name> 
    <servlet> 
    <servlet-name>Hello</servlet-name> 
    <servlet-class>com.main.Hello</servlet-class> 
    </servlet> 

    <servlet-mapping> 
    <servlet-name>Hello</servlet-name> 
    <url-pattern>/hello</url-pattern> 
    </servlet-mapping> 
</web-app> 

請讓我知道是否需要任何信息。請幫我解決這個問題。

謝謝。

+2

您是否真的在com.main.Hello.java上編寫了servlet文件? –

+1

'java.lang.ClassNotFoundException:com.main.Hello'此消息表明WAR文件和/或部署過程存在問題。 'Tomcat'找不到.class文件。 – zloster

回答

0

正確檢查您的班級路徑並確保web.xml存在於WEB-INF文件夾中。然後清理你的項目並運行它。

相關問題