2017-04-25 4 views
0

Tomcat 서버에서 간단한 서블릿 클래스를 실행하려고하면이 오류가 발생합니다.Tomcat 서버에서 간단한 Servlet을 실행할 수 없습니다. HTTP 상태 500 받기 - 서블릿 클래스 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에 작성 했습니까? –

+1

java.lang.ClassNotFoundException : com.main.Hello'이 메시지는 WAR 파일 및 배포 절차에 문제가 있음을 나타냅니다. 'Tomcat'은 .class 파일을 찾을 수 없습니다. – zloster

답변

0

클래스 경로를 올바르게 확인하고 WEB-INF 폴더에 web.xml이 있는지 확인하십시오. 그런 다음 프로젝트를 정리하고 실행하십시오.