Исключение нулевого указателя сонара в части кода Java - PullRequest
0 голосов
/ 03 июля 2019

У меня есть фрагмент кода ниже, в котором сонар показывает, что исключение может быть выдано «NullPointerException»;"mainDTO" здесь можно обнулять.

Посоветуйте, пожалуйста, как можно исправить то же самое

public mainDTO create(mainDTO mainDTO) throws NotFoundException {
        if (mainDTO != null) {
            Main main = mainMapper.tomain(mainDTO);
            mainRepository.save(main);
            return mainMapper.tomainDTO(main);
        }
        throw new ResourceNotFoundException("Can not create the main " + mainDTO.getMainId()); // ** Sonar Qube exception
    }

1 Ответ

0 голосов
/ 03 июля 2019

Написав строку:

if (mainDTO != null) {

, вы отмечаете, что mainDTO может быть нулевым.Но вы не сделали нулевую проверку около

mainDTO.getMainId()

, где жалуется Сонар.Если mainDTO действительно равно нулю, исключение пустого указателя будет выдано в этой строке.

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