2011-01-26 2 views
1

가능한 가장 간단한 방법으로 Jetty를 사용하려고합니다. 나는 기본적으로 그렇게 보이는 부두 @ 이클립스 문서에서 연습을 실행하여 시작 :Embedded Jetty가 각 메시지를 두 번 처리합니다.

public class Main { 

    public class HelloHandler extends AbstractHandler 
    { 
     public void handle(String target,Request baseRequest,HttpServletRequest  request,HttpServletResponse response) 
      throws IOException, ServletException 
     { 
      response.setContentType("text/html;charset=utf-8"); 
      response.setStatus(HttpServletResponse.SC_OK); 
      baseRequest.setHandled(true); 
      response.getWriter().println("<h1>Hello World</h1>"); 
     } 
    } 

    private void run() throws Exception 
    { 
     Server server = new Server(8080); 
     server.setHandler(new HelloHandler()); 
     server.start(); 
     server.join(); 
    } 

    public static void main(String[] args) throws Exception 
    { 
     Main m = new Main(); 
     m.run(); 
    } 
} 

문제는 핸들러가 모든 요청 두 번 호출되는 것입니다. Chrome을 사용하여 http : // localhost : 8080 시뮬레이션을 수행하여 차이가있는 경우. 부두는 두 개의 항아리로 포함된다

  • 부두 - 모든 7.0.2.v20100331.jar
  • 서블릿 API를-2.5.jar 내가 잘못 뭐하는 거지

/여기 실종?

답변

3

크롬은 "비난했습니다"라고 밝힙니다. 나는 동일한 HTTP 요청을 얻지 못했으며, /favicon.ico에 대한 요청 외에도 원래 HTTP 요청을 받고있었습니다. 부두가 걱정된다면 모두 괜찮아 보입니다.