Ошибка 404 при доступе к сервлету в Tomcat 9.0.91

Я развернул приложение LearnServlet на сервере Tomcat 9.0.91. Основная страница (index.jsp) открывается корректно по адресу http://localhost:8080/LearnServlet/.

Однако при попытке открыть сервлет по адресу http://localhost:8080/LearnServlet/hello получаю ошибку 404. В логах catalina.out и localhost отсутствуют ошибки.

Детали окружения:

ОС: Windows 11 (64-bit) Java: JDK 22.0.1 (Oracle) Tomcat: 9.0.91 Структура проекта* LearnServlet.war/ index.jsp WEB-INF/ classes/ com/example/HelloServlet.class Код сервлета:

java

import javax.servlet.http.HttpServlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
import java.io.IOException;
@WebServlet("/hello")
public class MainServlet extends HttpServlet{
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws 
        resp.setContentType("text/html");
        PrintWriter printWriter = resp.getWriter();
        printWriter.write("<html>\n" +
                "    <body>\n" +
                "        <h1>Hello User!</h1>\n" +
                "    </body>\n" +
                "</html>");
        printWriter.close();
    }
}

Что пробовал:

Убедился, что Tomcat запускается без ошибок (логи catalina.out и localhost). Проверил, что основная страница index.jsp открывается. Структура WAR-файла соответствует требованиям (WEB-INF и .class-файлы на месте). Пробовал аннотации результат одинаковый. Очистил кэш браузера и проверил с разными браузерами. zВопрос: Что может быть причиной ошибки 404 при доступе к сервлету? Какие дополнительные проверки стоит выполнить?


Ответы (0 шт):