2011-08-04 4 views
6

다음 자바 파일을 생성하고 컴파일하고 .class 파일을 가지고 있습니다.tomcat 서버에서 서블릿을 실행하는 방법

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.http.*; 

public class HelloWorld extends HttpServlet { 

public void doGet(HttpServletRequest request, HttpServletResponse response) 
throws IOException, ServletException 
{ 
    response.setContentType("text/html"); 
    PrintWriter out = response.getWriter(); 
    out.println("<html>"); 
    out.println("<body>"); 
    out.println("<head>"); 
    out.println("<title>First Example</title>"); 
    out.println("</head>"); 
    out.println("<body>"); 
    out.println("<h1>Hello World!</h1>"); 
    out.println("</body>"); 
    out.println("</html>"); 
} 
} 

지금 내가 아래에 디렉토리 ABC/WEB-INF가/클래스를 생성 아파치 - 톰캣-6.0.32/웹 어플리케이션 디렉토리 나의 클래스 파일의 경로는 다음과 같습니다 아파치 - 톰캣-6.0.32/webapps에/ABC/WEB- INF/클래스/HelloWorld.class 와 내가 잘못 가고 어디

"(/ ABC /하여 HelloWorld)을 사용할 수 없습니다 요청한 리소스"오류 을 http://localhost:8080/abc/WEB-INF/classes/HelloWorld에 액세스하려고하지만, 점점? 아니면 다른 구성을 지정해야합니까?

+1

HTTP : /을 /pdf.coreservlets.com/이 책을 읽어보십시오. 당신은 WEB-INF 내부의 어떤 것에도 직접 액세스 할 수 없습니다. – Sean

답변

2

web.xml에 서블릿을 구성해야합니다.

24

당신은 web.xml

<servlet> 
    <servlet-name>HelloWorld</servlet-name> 
    <servlet-class>yourpackage.HelloWorld</servlet-class> 
</servlet> 

에 서블릿을 정의하고

<servlet-mapping> 
    <servlet-name>HelloWorld</servlet-name> 
    <url-pattern>/HelloWorld</url-pattern> 
</servlet-mapping> 

서블릿 마지막으로 URL 입력 URL에서 매핑을 정의해야합니다 http://localhost:8080/abc/HelloWorld

관련 문제