【问题标题】:Servlet: blank screenServlet:黑屏
【发布时间】:2013-02-20 18:56:42
【问题描述】:

我正在使用 Eclipse IDE,下面的代码在浏览器上显示空白屏幕。我不知道为什么它显示空白屏幕。有什么想法吗? 提前致谢。

/**
 * Servlet implementation class Ch1Servlet
 */
public class Ch1Servlet extends HttpServlet {
    private static final long serialVersionUID = 1L;


    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        // TODO Auto-generated method stub
        PrintWriter out=response.getWriter();
        Date dat=new Date();
        System.out.println(dat);
        out.println("<html>" + "<body>" + "<h1>Heello world</h1>" + dat + "</body>" + "</html>");       
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    }
}

请找到部署描述符文件。 web.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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>Monte</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
    <description></description>
    <display-name>Ch1Servlet</display-name>
    <servlet-name>Ch1Servlet</servlet-name>
    <servlet-class>Ch1Servlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Ch1Servlet</servlet-name>
    <url-pattern>/Ch1Servlet</url-pattern>
  </servlet-mapping>
</web-app>

【问题讨论】:

  • 请显示您的 serlvet-mapping url 以及您如何尝试访问此 servlet。完成PrintWriter 后,您还应该致电out.close()
  • 感谢您的回复!!。我已将我的帖子添加到部署描述符文件中。我已尝试使用 out.close 仍然出现空白屏幕。
  • 您的请求网址是什么?
  • 除非你的类在默认包中(无包),否则你应该把完整的类路径(例如com.myapp.Ch1Servlet
  • 您也可以尝试在out.close() 之前执行out.flush()

标签: java eclipse servlets


【解决方案1】:

试试这样的:

  package package;


 /**
   *
   * @author 
   */
   public class Ch1Servlet  extends HttpServlet {



/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
 * @param request servlet request
 * @param response servlet response
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    try {
        //you code here
    } catch (Exception exc) {
        throw new MyException(exc);
    }finally{
            out.close()
        }
}


// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">

/** 
 * Handles the HTTP <code>GET</code> method.
 * @param request servlet request
 * @param response servlet response
 */
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
}

/** 
 * Handles the HTTP <code>POST</code> method.
 * @param request servlet request
 * @param response servlet response
 */
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
}

/** 
 * Returns a short description of the servlet.
 */
@Override
public String getServletInfo() {
    return "Short description";
}
// </editor-fold>
}

以上代码同时接受get和post

【讨论】:

  • 我写的和你说的一样,但是还是黑屏:(
  • 你有一些 System.out.println() 语句。日期字符串是否打印到控制台?服务器中的任何错误日志?当您右键单击浏览器并选择“查看源代码”时,您是否看到任何 html 源代码?
  • @Surge:感谢您的回复。不,控制台上没有显示日期。我也检查了来源。来源也只是空白。
猜你喜欢
  • 2012-07-16
  • 2017-07-14
  • 2020-02-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多