Отладка Java затмения никогда не входит в определенные классы обслуживания MVC - PullRequest
0 голосов
/ 26 января 2019

Я пытаюсь отладить веб-приложение java mvc с помощью eclipse.Тем не менее, отладка не входит в мой класс обслуживания, который вызывается из моего контроллера.Я могу отлаживать до того момента, когда мой контроллер вызывает метод "getReportsService.getAppReportLinksFromIQ (appid)", но он никогда не входит в класс обслуживания, используя F5 в eclipse.Таким образом, все, что я вижу, это результирующее исключение nullPointerException, полученное из того, что ему не понравилось в методе.

код контроллера:

try {
    reports = getReportsService.getAppReportLinksFromIQ(appid);
} catch (Exception e) {
    e.printStackTrace();
}

сервисный код ПРИМЕЧАНИЕ. URL в вызове не является реальным URL

@Service
public class GetReportsServiceImpl implements GetReportsService {

    @Override
    public String getAppIdFromIQ(String appId) {

        RestTemplate restTemplate = new RestTemplate();
        //Get encode Application ID

        String getAppIdUrl = "http://url" + appId;
        AppIdDTO response = restTemplate.getForObject(getAppIdUrl + "/1", AppIdDTO.class);
        return response.getId();
    }

Ответы [ 3 ]

0 голосов
/ 26 января 2019

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

0 голосов
/ 26 января 2019

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

GetReportsService getReportsService;

Я изменил на

@Resource private GetReportsService getReportsService;

Это решило проблему.Спасибо

0 голосов
/ 26 января 2019

Единственная причина, по которой я это вижу, - getReportsService - ноль. В противном случае выполнение должно ввести метод.

Если это не так, пожалуйста, посмотрите трассировку стека NPE, чтобы найти точную строку.

Кстати, я полагаю, вы имели в виду getAppIdFromIQ не getAppReportLinksFromIQ

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