Spring Data Mongo, почему исключение не является экземпляром DuplicateKeyException? - PullRequest
0 голосов
/ 25 июня 2019

Я работаю на примере Spring Boot Rest MongoDB.В этом примере у меня есть коллекция Student, где emailId - уникальное поле (я применил индексирование, где unique=true).Когда кто-то создает нового ученика и использует emailId, уже присутствующий в Mongo, я должен получить DuplicateKeyException.Но каким-то образом бывший объект не является частью DuplicateKeyException.Почему не экземпляр DuplicateKeyException?

try {
    studentRepository.save(student);
} catch (Exception ex) {
    if(ex instanceof DuplicateKeyException) {
        throw new DuplicateResourceFoundException("studentName already present");
    }
    throw new DuplicateResourceFoundException("studentName already present");


    //throw new ResponseStatusException(HttpStatus.INTERNAL_SERVER_ERROR, env.getProperty("error.db.exception"), ex);
} 

1 Ответ

0 голосов
/ 26 июня 2019

Я смог решить это. Я сделал простую ошибку, импорт должен был быть сделан из org.springframework.dao.DuplicateKeyException. Теперь это работает отлично.

...