【发布时间】:2018-04-07 07:51:08
【问题描述】:
我在 OSX 上的 Eclipse 中设置了一个 tomcat V8.5 服务器。我已经设置了一个默认 servlet 来处理来自以下 html 表单的获取请求。我可以启动服务器并加载 index.html,但是每当我单击表单上的提交时,我都会收到 404 错误。这段代码来自一位教授并在她的 PC 上工作,所以我假设我在 OSX 上的服务器存在设置问题。有谁知道我应该先看哪里?我的教授不愿意帮助诊断 OSX 问题。我不确定我需要提供的所有信息到底是什么,很高兴向愿意提供帮助的任何人提供更多详细信息!提前致谢!
Picture of my project structure
<form action="http://localhost:8080/CyberFlix0/CyberFlixServlet" method="get">
Film Title: <input type="text" name="film_title"><br>
<input type="submit" value="Submit">
</form>
我的 doGet 函数:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
Full Servlet Code:
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class CyberFlixServlet
*/
@WebServlet("/CyberFlixServlet")
public class CyberFlixServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public CyberFlixServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
【问题讨论】:
-
您是否将您的 servlet 映射到 web.xml 或者如果它是基于注释的,请检查一次路径
-
您能否详细说明如何执行此操作?我不确定你的意思。
-
@Kevin Gardenhire:您可以通过:stackoverflow.com/questions/8198312/… 并发布完整的 servlet 和 web.xml 代码
-
XML 文件有 4000 多行,您需要查看什么具体内容吗?但它与任何默认值都没有变化。
-
您通过什么 URL 访问
index.html? 为什么你项目的 web.xml 文件有 4000 行长?
标签: java eclipse macos tomcat servlets