【问题标题】:Servlets & IntelliJServlet 和 IntelliJ
【发布时间】:2020-07-25 10:00:05
【问题描述】:

我在 Intellij 下创建了一个测试项目,用 Tomcat 启动 Java EE。

我的服务器启动良好,不用担心。

我创建了一个 Servlet,其中包含我的 HTML 代码以及 doPost 和 getPost。

当我想运行 servlet 时,服务器启动正常,但我最终得到一个空白页面。

一个想法?

代码:

    package com.octest.servlets;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

@WebServlet(name = "Test")
public class Test extends HttpServlet {
    protected void doPost (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType ("text/html");
        response.setCharacterEncoding ("UTF-8");

        PrintWriter out = response.getWriter();
        out.println("<!DOCTYPE html>");
        out.println("<html>");
        out.println("<head>");
        out.println("<meta charset=\"utf-8\" />");
        out.println("<title>Test</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<p>Bonjour !</p>");
        out.println("</body>");
        out.println("</html>");
    }

    protected void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    }
}

等 le web.xml :


    <?xml version="1.0" encoding="UTF-8"?>
    <web-app 
            xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
             version="4.0">
        <servlet>
            <servlet-name>Test</servlet-name>
            <servlet-class>com.octest.servlets.Test</servlet-class>
        </servlet>
        
        <servlet-mapping>
            <servlet-name>Test</servlet-name>
            <url-pattern>/app</url-pattern>
        </servlet-mapping>
    </web-app>

谢谢

【问题讨论】:

  • 您是否打开了浏览器的网络监视器并检查了服务器实际发送的内容?

标签: java tomcat intellij-idea servlets


【解决方案1】:

浏览器会发出 GET 请求,但您的 HTML 页面是 doPost 方法。您需要将此页面保留在doGet 方法中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-11
    • 1970-01-01
    • 2016-01-07
    • 2021-09-12
    • 1970-01-01
    • 2021-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多