Окей, спасибо, попробую проверить этот вариант. Если что - соберу минимально необходимый кусок кода, чтобы вопроизвести.
Я правильно понимаю, что мне нужно только в основном методе сервиса указать
@Transactional (в том, который дергается из контроллера)?
У меня сейчас создание магазина происходит так:
ShopServiceImpl::createShop - public метод интерфейса ShopService,
@Transactional, вызывается из контроллера
|
|
----ShopServiceImpl::saveShopInfo - private метод класса ShopServiceImpl
----|
----repository.save(shop)
----|
--------ShopPhoneServiceImpl::saveShopPhone - public метод интерфейса ShopPhoneService, бросает исключение на одном из n телефонов, не помечен
@Transactional--------|
--------repository.save(address)
--------throw
RuntimeException
('') - на самом деле здесь бросается наследник
--------|
--------return
----|
----|
----return
|
|
return