Почему несколько аннотаций @ComponentScan портят мою транзакцию AspectJ?

Я задаю этот вопрос, чтобы продолжить проблему, которую я описал здесь .

У меня было неожиданное поведение, когда я использовал транзакции AspectJ - некоторые операции были немедленно зафиксированы в БД, прежде чем эта транзакция была завершена. И поэтому их не откатывали в случае ошибки. Когда я изменил режим советов (@EnableTransactionManagement(mode=AdviceMode.ASPECTJ)) на PROXY, все работало нормально.

Я обнаружил, что у меня было несколько классов, аннотированных аннотацией @ComponentScan, и когда я удалил все эти аннотации, кроме одной, все заработало, как и ожидалось!

Мой вопрос - почему?


person Dikla    schedule 29.10.2018    source источник
comment
У меня была похожая проблема, и в моем случае я не нашел возможности @componentScan. Пришлось делать обходной путь. Я предлагаю вам скопировать код из предыдущего выпуска, чтобы воспроизвести его, возможно, это ошибка весной. Или, по крайней мере, непонятная документация.   -  person Andrii Plotnikov    schedule 29.10.2018