繁体   English   中英

Eclipse中的Tomcat服务器:错误404提交到servlet

[英]Tomcat Server in Eclipse: Error 404 submitting to servlet

我已经在OSX上的Eclipse中设置了tomcat V8.5服务器。 我已经设置了一个默认的servlet来处理来自以下html表单的get请求。 我可以启动服务器并加载index.html,但是每当我单击表单上的提交时,都会收到404错误。 该代码来自一位教授,并且可以在她的PC上运行,因此我假设我在OSX上的服务器存在设置问题。 有谁知道我应该先看哪里? 我的教授不愿意帮助诊断OSX问题。 我不确定我需要提供什么信息,很乐意向愿意提供帮助的任何人提供更多详细信息! 提前致谢!

我的项目结构图

<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);
}

}

改变动作标记的值是这样的: <form action="/CyberFlixServlet" method="get">

如下所示,使用action =“ Cyber​​FlixServlet”

<form action="CyberFlixServlet"     method="get">
  Film Title: <input type="text" name="film_title"><br>
  <input type="submit" value="Submit">
</form>

请确保您的项目中没有问题,要检查任何问题,请从窗口->显示视图->问题中打开问题视图,如果有任何错误,请修复它

如果您的项目中有任何问题,eclipse将拒绝编译

我从另一篇文章中拉出了这个答案,但这已经解决了。

这是tomcat和catalina配置文件的问题:

您要做的只是:

右键单击Eclipse中的服务器tomcat,单击属性,单击切换位置,导航视图的左侧将出现一个小服务器,在启动服务器后双击该服务器,然后选择“使用Tomcat安装并保存,这将解决该常见404”问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM