#web #servlets #http-status-code-404 #java-ee-6
#сеть #сервлеты #http-статус-код-404 #java-ee-6
Вопрос:
Это снова я 🙁
Теперь я столкнулся с некоторыми проблемами.
В эти дни я изучаю сервлет с помощью ИДЕИ.
Я написал код и настроил Tomcat(версия 10.0.10) следующим образом:
package yj.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; import java.io.IOException; @WebServlet(urlPatterns = {"/user"}) public class UserServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("来了个get请求"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("来了个post请求"); doGet(req, resp); } }
и
and to make sure, my Servlet version here
lt;dependencygt; lt;groupIdgt;javax.servletlt;/groupIdgt; lt;artifactIdgt;javax.servlet-apilt;/artifactIdgt; lt;versiongt;4.0.1lt;/versiongt; lt;/dependencygt;
also my web-app version is 3.1(which might mean @WebServlet() is allowed to use)
I think there should be something printed in tomcat’s output, like:
But this page shows up:
когда я печатал http://localhost:8089/user в качестве адреса
итак, есть ли что-то не так с моим сервлетом и как я могу это сделать ..
Любая помощь будет оценена по достоинству!
Структура проекта здесь проста.
Комментарии:
1. Похоже, что Tomcat 9.0 работает, но почему??
2. Ради Бога, я нахожу это… … Пользователи Tomcat 10 и далее должны знать, что в результате перехода с Java EE на Jakarta EE в рамках передачи Java EE в Eclipse Foundation основной пакет для всех реализованных API изменился с javax.* на jakarta.*. Это почти наверняка потребует изменений кода, чтобы приложения могли перейти с Tomcat 9 и более ранних версий на Tomcat 10 и более поздние версии. В настоящее время разрабатывается инструмент миграции, который поможет этому процессу. …. ….. это, вероятно, означает, что я должен изменить название пакетов…..
Ответ №1:
Я думаю, что нашел этот ответ на вопрос.
вместо
import javax.servlet.ServletException; // ... and so on
мы должны использовать
import jakarta.servlet.ServletException; // ... and so on
это потому, что что касается Tomcat (версияgt;=10)
, происходит передача Java EE в фонд Eclipse
поэтому пакеты должны быть переименованы.
Но эта проблема действительно смущает меня на некоторое время…
Спасибо за ваше время и желаю всем вам хорошего дня!