Как найти путь к веб-сервису в героку? - PullRequest
0 голосов
/ 12 мая 2019

Итак, у меня есть веб-приложение с определенным маршрутом: http://localhost:28389/MyProjectName/webresources/test/, которое возвращает только строку json:

local

Но когда я развертываю свое приложение на heroku, веб-приложение не может найти тот же путь: heroku url

Это мой ApplicationConfig:

@javax.ws.rs.ApplicationPath("webresources")
public class ApplicationConfig extends Application {

  @Override
  public Set<Class<?>> getClasses() {
      Set<Class<?>> resources = new java.util.HashSet<>();
      addRestResourceClasses(resources);
      return resources;
  }


  private void addRestResourceClasses(Set<Class<?>> resources) {
    resources.add(pkgServices.TestService.class);
  }

}

А это мой класс TestService:

@Path("test")
public class TestService {

 public TestService () {

 }

 @GET
 @Produces({MediaType.APPLICATION_JSON})
 public Response getTestMsg() throws Exception {
     return Response.ok("welcome").build();
 }
}

1 Ответ

0 голосов
/ 12 мая 2019

Прочитайте документы Heroku.Они выделяют номер порта для вас и устанавливают его в переменную окружения.Вы должны использовать эту переменную среды в своем приложении для привязки http-сервера к этому порту.

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

В настоящее время проблема заключается в том, что Heroku не может переслать запрос на ваш сервер, поскольку вы не прослушиваете порт, который Heroku ожидает от вас.

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