Почему я не могу получить доступ к JAX-RS API? - PullRequest
0 голосов
/ 10 апреля 2020

У меня есть задание от компании, которая отправляет мне виртуальную машину со всем настроенным. Задача состоит в том, чтобы мне нужно было создать API для извлечения информации о персоне из базы данных и ее отображения.

Проблема в том, что когда я запускаю приложение, сервер возвращает индекс. html с текстом приветствия. Однако, когда я пытаюсь изменить индекс. html, он не изменяется в браузере, но когда я делаю запрос через почтальона, я получаю "обновленный" индекс. html.

Что я также понял, что я не могу получить доступ к API, который я создал, чтобы проверить, могу ли я получить доступ к API в первую очередь.

Путь, по которому возвращается индекс. html: "http://hocalhost: 8080 / tutorial-Applicans /"

Мой сервис - PersonService. java:

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

@Stateless
@Path("person")
public class PersonService{

@PersistenceContext(unitName = "de.erknrw_tutorial-applicants_pu")
private EntityManager em;

@GET
@Path("hello")
@Produces(MediaType.TEXT_PLAIN)
public String sayHello(){
return "Hello World!!!"
}


}



Я пытаюсь получить" Hello World !!! ", но мой путь неправильно, когда я попробовал "http://hocalhost: 8080 / tutorial-Applicans / person / hello ".

Стоит упомянуть, что существует также файл JAXRSConfiguration. java:

import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Applications;

@ApplicationPath(JAXRSConfiguration.RESTROOT)
public class JAXRSConfiguration extends Application{

public static final String RESTROOT = "webresources";
}


Как получить доступ к sayHello ()? Как выглядит путь?

Заранее спасибо

1 Ответ

1 голос
/ 12 апреля 2020

При развертывании в веб-приложении приложение JAX-RS настраивается как сервлет. Таким образом, вы должны добавить путь к приложению до пути к ресурсу.

Конечной точкой будет:

http://[server]:[port]/[context path]/[application path]/[resource path]/[operation path]

В вашем случае:

http://hocalhost:8080/tutorial-applicans/webresources/person/hello
...