【问题标题】:Servlet error HTTP Status 404 – Not Found Java TomcatServlet 错误 HTTP 状态 404 – 未找到 Java Tomcat
【发布时间】:2018-05-11 03:57:34
【问题描述】:

我知道已经存在类似的问题,但没有一个解决方案对我有用。我检查了目录并多次编辑了我的 `web.xml 文件,但它仍然无法正常工作。

我正在用 Java 编写一个在 Tomcat 上运行的简单 servlet,但出现错误:

HTTP 状态 404 - 未找到

类型状态报告

留言/WorkshopForm/MainWorkshopForm

描述 源服务器没有找到当前的表示 对于目标资源或不愿意透露存在的资源。

我的 servlet 类是:

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

@WebServlet(description = "This registration form", urlPatterns = { 
"/WorkshopForm" })


public class WorkshopForm {
public class MyServlet extends HttpServlet implements Servlet {
    private static final long serialVersionUID = 13425L;

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

    String participantName = request.getParameter("participantName");
    String participantSurname = request.getParameter("participantSurname");
    String participantEmail = request.getParameter("participantEmail");

    PrintWriter writer = response.getWriter();
    writer.println("Welcome" + participantName + " " + participantSurname + " " + participantEmail); 
    }       
}

}

我的web.xml

Eclipse 中的树:

web.xml 文件有问题吗?我在想,也许我的名称或路径有些不匹配,但我已经尝试解决它,但不知道为什么它不起作用。

【问题讨论】:

  • 你的目标是什么网址
  • "MainWorkshopForm" 你的代码中没有提到这个 URL。你为什么期望那里有资源?

标签: java tomcat


【解决方案1】:

URL 模式 /WorkshopForm 仅匹配确切的 URL 路径 /WorkshopForm。如果您希望 servlet 也可以处理较长的路径,例如 /WorkshopForm/MainWorkshopForm,则需要将 URL 模式更改为 /WorkshopForm/*。然后你可以在你的servlet代码中调用request.getPathInfo()来获取路径的变量部分。

另一种选择是使用一些 JAX-RS 框架来处理从 URL 路径到处理单个路径的 Java 方法的映射。

【讨论】:

    猜你喜欢
    • 2019-07-30
    • 2019-07-30
    • 2019-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-06
    • 2017-03-28
    相关资源
    最近更新 更多