Извлечение параметров из URL на стороне сервера с использованием Java - PullRequest
0 голосов
/ 03 сентября 2018

Я создаю приложение, которое использует AngularJS на стороне клиента и java на стороне сервера. На главной странице у меня есть несколько ссылок на категории ресторанов, которые при нажатии на все ведут к частичному restorani.html. Таким образом, я могу знать, какая категория ресторанов была нажата, я добавил идентификатор в URL, так что это выглядит примерно так:

  <a href="#/restorani/1">Chinese food</a> <br />
  <a href = "#/restorani/2">Italian food</a>

Restorani.html должен показывать рестораны из выбранной категории. Вот как выглядит мой контроллер:

app.controller('RestoranController', function($routeParams, $scope, 
 RestoranService){

function init(){
    RestoranService.getById($routeParams.id).then(function(response){
        $scope.jela = response.data;
    });
}
init();

});

А вот мой сервис, который отправляет запрос на получение:

app.factory('RestoranService', function($http){
var factory = {};

factory.getById = function(id){
    return $http.get('/WebProjekat/rest/restorani/getById/' + id);
}

return factory;

}); А вот мой код на стороне сервера:

@GET
@Path("/getById/{id}")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public ArrayList<Artikli> getById(@PathParam("id") String id){
    int idNum = Integer.parseInt(id);
    ArrayList<Restoran> listaRestorana = 
  (ArrayList<Restoran>)ctx.getAttribute("restorani");
    if(listaRestorana == null) {
        listaRestorana = readAllRestorane();
        ctx.setAttribute("restorani", listaRestorana);
    }

    Restoran r = getRestoranById(listaRestorana, idNum);

    return r.getListaJela();
}

По некоторым неизвестным мне причинам я продолжаю получать эту ошибку:

GET http://localhost:8008/WebProjekat/rest/restorani/getById/1 500 (внутренний Ошибка сервера).

Если кто-нибудь скажет мне, где ошибка, я был бы чрезвычайно благодарен. Извините, если это какая-то тривиальная ошибка, но я не могу ее найти, и я потратил на это много времени.

1 Ответ

0 голосов
/ 03 сентября 2018

Поскольку эта ошибка равна «500 (Внутренняя ошибка сервера)». Ваше приложение может иметь исключение в методе getById ().
Для отладки этого метода: - Добавьте точку отладки в getById () и запустите сервер в режиме отладки. И найдите ошибку или stackTrace в консоли сервера.

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