Все, что я знаю об этом исключении, - это Spring документация и некоторые сообщения на форуме с замороженными разработчиками, вставляющими огромные трассировки стека, и ответов нет.
Из Spring документации:
Брошенный, когда попытка совершить транзакцию привела к неожиданному откату
Я хочу разобраться раз и навсегда
-
Что именно это вызывает?
- Где произошел откат? в коде сервера приложений или в базе данных?
- Было ли это вызвано конкретным базовым исключением (например, что-то из java.sql. *)?
- Связано ли это с Hibernate? Связано ли это с Spring Transaction Manager (без JTA в моем случае)?
-
Как избежать этого? есть ли какая-либо лучшая практика, чтобы избежать этого?
- Как отлаживать его? кажется, трудно воспроизвести, какие-либо проверенные способы его устранения?