2013-11-14 5 views
1

Я написал веб-сервис с весенним ботинком, используя весенние данные jpa для настойчивости. У webservice есть несколько статических объектов (в Singleton Bean), которые необходимо скопировать в мою базу данных.Весна Данные JPA save() throws NPE

Иногда! (Это отстой ... Я не»на самом деле знаю, что происходит), когда я называю

ObjectType updated = myRepository.save(existingObject)

я получаю java.lang.NullPointerException - без полезной StackTrace как способ сделать это работает через @Scheduled. Я пробовал отлаживать и existingObject, кажется, абсолютно нормально. Ошибка возникает только тогда, когда existingObject на самом деле НЕ является новым объектом (то есть когда id! = 0)

P.S. Я использую Spring Boot, поэтому не использую EntityManager. Я использую только @Autowired myRepository.

+0

У меня есть подозрение, что @Schedule метод резервного копирования может действительно попытаться вызвать myRepository.save() в то время как existingObject может имеют поля, которые являются нулевыми, но не должны быть. Тем не менее ... это странно. – Alex

ответ

0

Вы не предоставили достаточную информацию. Если эта строка встречается там, где происходит NullPointerException, то единственными возможностями являются то, что myRepository имеет значение null или existingObject имеет значение null. Однако возможно, что NullPointerException происходит в результате чего-то в сохранении. Оберните код в try catch и запишите файл stacktrace exception в файл.

При необходимости, проверка каротажной настройки заметок здесь:

Смежные вопросы