2014-07-26 4 views
0

Eclipse에서 Tomcat에 문제가 있습니다. Simple Servlet을 실행할 때 Tomcat (Eclipse에서)이 페이지를 표시하지 않지만 다운로드하도록 요청합니다. 코드가 있습니다. 문제를 해결하려면 어떻게해야합니까? 소스 코드는 ..Documents \ 작업 \ Servlet02에 \ SRC \ MYPKG \ SimpleServletTomcat은 서블릿을 다운로드 만 허용합니다.

package mypkg; 

import java.io.IOException; 
import java.io.PrintWriter; 
import java.util.Date; 
import javax.servlet.ServletException; 
import javax.servlet.http.*; 
import javax.servlet.ServletRequest; 
import javax.servlet.ServletResponse; 
import javax.servlet.annotation.*; 

@SuppressWarnings("unused") 
@WebServlet(name = "SimpleServlet", urlPatterns = {"/SimpleServlet"}) 
public class SimpleServlet extends HttpServlet { 

    Date currDateAndTime; 

    private static final long serialVersionUID = 1L; 

    protected void processRequest(HttpServletRequest request , HttpServletResponse response) throws IOException , ServletException{ 
     response.setContentType("html/text ; charset=UTF-8 "); 
     PrintWriter out = response.getWriter(); 
     try { 
      out.println("<html>"); 
      out.println("<head>"); 
      out.println("<title>Servlet CurrentDateAndTime</title>"); 
      out.println("</head>"); 
      out.println("<body>"); 
      out.println("<h1>Servlet CurrentDateAndTime at " + request.getContextPath() + "</h1>"); 
      out.println("<br/>"); 
      synchronized(currDateAndTime){ 
       currDateAndTime = new Date(); 
       out.println("The current date and time is: " + currDateAndTime); 
      } 
      out.println("</body>"); 
      out.println("</html>"); 
      } finally { 
      out.close(); 
      } 
    } 
    @Override 
    protected void doGet(HttpServletRequest request , HttpServletResponse response) throws IOException , ServletException{ 
     processRequest(request,response); 
    } 

    @Override 
    protected void doPost(HttpServletRequest request , HttpServletResponse response) throws IOException , ServletException{ 
     processRequest(request,response); 
    } 

    @Override 
    public String getServletInfo() { 
     return "Short description"; 
    }// </editor-fold> 


} 
+0

MIME-종류는 일반적으로 단지 브라우저에서 다운로드해야합니다. –

답변

3

문제로 인해 행 아래에 있습니다.

response.setContentType("html/text ; charset=UTF-8 "); 

response.setContentType("text/html; charset=UTF-8"); 

수 또는 완전히 제거하거나

response.setContentType("text/html"); 
response.setCharacterEncoding("UTF-8"); 

Documentation

이,143의 캐릭터와 setContentType(java.lang.String) 호출에 대해 자세히 알아 사용해야합니다 이 메서드를 String 형인 UTF-8으로 호출하면 setContentTypetext/html; charset=UTF-8이라는 문자열로 호출하는 것과 같습니다.

+1

'text/html'이 나에게 좋을 것 같습니다 ... – GPI

+0

@GPI 예가 수정되었습니다. 감사. – Braj

0

는 알려져 있지

response.setContentType("text/html"); 
response.setCharacterEncoding("UTF-8"); 
관련 문제