Прерывание транзакции, созданной @Transactional, но возвращающейся должным образом (без исключения) - PullRequest
1 голос
/ 17 августа 2011

У меня есть метод, аннотированный @Transactional.В этом методе объект данных анализируется и, наконец, должен быть сохранен в базе данных.Если синтаксический анализ завершается неудачно, этот метод не генерирует исключение, а возвращает со специальным значением.

Как я могу указать транзакции на откат?Обычно транзакции, созданные @Transactional, просто откатываются при исключении.

Пожалуйста, не говорите мне, почему я не должен возвращать специальное значение или почему использование @Transactional не имеет смысла в моем случае.Мне нужно эффективное решение, даже если это не самый лучший дизайн - я знаю это сам.

Спасибо за вашу помощь!

Ответы [ 2 ]

2 голосов
/ 17 августа 2011
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
1 голос
/ 17 августа 2011
...