当前位置: 首页 > 知识库问答 >
问题:

Servlet 404错误-即使更改了服务器位置[重复]

魏冷勋
2023-03-14

我是Servlet编程的新手,我已经在Mac中配置了Eclipse IDE和Tomcat服务器。然后,我按照本JavaPoint教程创建了一个简单的Hello World Servlet,并在Tomcat服务器上运行该项目。但它显示404。

然后我参考并遵循以下答案:

答案1:Tomcat servlet:错误404-请求的资源不可用

答案3:Tomcat-HTTP状态404

但是对我来说没有任何作用,Web容器配置意味着当我在浏览器中尝试这个http://localhost:8080时,它会显示Apache Tomcat页面。

我使用的是Eclipse Java EE开发版本Mars(4.5.0),Apache Tomcat 8.0.26。

import java.io.IOException;
import java.io.PrintWriter;
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 Hello
 */
@WebServlet(name="Hello", urlPatterns={"/Hello"})
public class Hello extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @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());

        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.print("<html><body>");
        out.print("<h1>Hello</h1>");
        out.print("</body></html>");
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>MyFirst</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>
</web-app>

服务器概述:

在这个项目中,名称是MyFirst,我的servlet名称是Hello。运行项目后,我尝试使用以下URL http://localhost:8080/myfirst/hello

共有1个答案

施飞昂
2023-03-14

双击服务器实例(在“Servers”视图中),单击下面的“Modules”选项卡,并检查“Path”列。是你所期望的吗?

默认情况下,Eclipse总是将项目名称添加到路径中。

 类似资料:
  • 我正在尝试使用Firebase消息传递(web)。默认情况下,Firebase会搜索包含服务工作者的文件“Firebase messaging sw.js”。 服务工作者脚本应位于应用程序的绝对路径上!例如:http://localhost/firebase-messaging-sw.js 如何更改此默认位置?!搜索官方文档,我发现了这个方法:,它接受服务工作者注册,但试图使用它,我得到一个错误,

  • 更新:以下错误消息来自。 错误:服务器访问错误:连接重置URL=https://repo1.Maven.org/maven2/org/fusesource/jansi/jansi/1.11/jansi-1.11.pom Maven central:org/fusesource/jansi#jansi;1.11:res=https://repo1.Maven.org/maven2/org/fuses

  • 你好,我正在尝试在我的Android应用程序上使用GCM。 我的问题是,当我试图发送消息时,我得到401错误,未经授权的错误。 我在谷歌云控制台中为服务器应用程序制作了一个密钥,并遵循以下说明:http://developer.android.com/google/gcm/gs.html 这是我的代码: 从我的应用程序,我发送了POST到这个PHP代码:

  • 问题内容: 我试图重现我在EC2上的node.js应用中看到的MySQL错误,其中包含节点mysql库: 连接丢失:服务器关闭了连接。 我无法在本地重现该错误-通过我的代码可以很好地处理数据库- 它仅每隔几秒钟重新检查一次,并在重新启动后重新连接到db。在EC2上,它发生在太平洋时间凌晨4点左右,但是数据库仍然正常运行。 我想 用我的本地mysql重现崩溃 在我的mysql帮助器模块中添加我需要的

  • 错误: 发生错误:09:54:58:错误:连接到服务器时出错:致命:用户“Postgres”的密码身份验证失败。

  • 每次我试图通过改装发送POST请求时,我都有500个内部服务器错误。当我发送GET请求时,它会正确发送。我确信服务器端的一切都正常。我的代码怎么了? 请求声明: