@Path не отвечает на базовый запрос @GET в сервлете Java в Eclipse Tomcat - PullRequest
0 голосов
/ 12 марта 2019

enter image description here Я новичок в Eclipse и Apache Tomcat и пытаюсь выполнить базовый запрос на получение.Я успешно установил Apache Tomcat и запустил сервер, но при переходе на настроенный маршрут я получаю сообщение об ошибке 404.Насколько я понимаю, класс и файл web.xml настроены правильно.Как я могу успешно выполнить запрос get в Eclipse и вернуть ожидаемый ресурс?

Класс, который я настроил с помощью пути и получения аннотации, по умолчанию (без названия упакован) и находится ниже:

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Path("/attempt")
public class TestAttempt {
    @GET
    @Produces(MediaType.TEXT_PLAIN)
    public String getIt() {     
        System.out.println("not working");      
        return "Got it!";
    }       
}

И мой файл web.xml:

<?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_4_0.xsd" version="4.0">
  <display-name>Test3</display-name>

 <servlet>
     <servlet-name>helloServlet</servlet-name>
     <servlet-class>TestAttempt</servlet-class>
      <load-on-startup>1</load-on-startup>
 </servlet>

<servlet-mapping>
  <servlet-name>helloServlet</servlet-name>
  <url-pattern>/test/*</url-pattern>
</servlet-mapping>

  <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>

Затем я иду на localhost: 8080 / test / попытки и получаю 404 вместо ожидаемого: "Понял!"

Ответы [ 2 ]

1 голос
/ 12 марта 2019

Ваш класс TestAttempt не является сервлетом, поскольку он не расширяет HttpServlet.Можете ли вы внести это изменение и попробуйте снова.

0 голосов
/ 12 марта 2019

Проверьте отображение сервлета вашего сервлета в файле web.xml и убедитесь, что ваш веб-URL похож на http://localhost:8080/test/attempt

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...