Использование Spring 2.2.5 с данными Spring / JPA / Hibernate.
При использовании CrudRepository со структурой CrudRepository#saveAll()
или al oop с индивидуальным CrudRepository#save()
кажется невозможным сказать, какой из элементы нарушают ограничение.
Предполагая, что этот метод:
@Transactional
public void storeAll(Collection<Attribute> attributes) {
repository.saveAll(attributes);
}
Возвращается DataIntegrityViolationException
с вложенным спящим режимом ContraintViolationException
. Кажется, что в указанных исключениях нет ссылок на сущность.
Использование al oop тоже не работает:
@Transactional
public void storeAll(Collection<Attribute> attributes) {
for(Attribute attribute : attributes){
try{
repository.save(attribute);
}catch (Exception e){
///
}
}
}
Исключение внутри l oop не быть пойманным (метод save ничего не бросает). Вместо этого он выдается при возврате из метода. Может из-за какой-то оптимизации?