Используя этот метод, Spring по какой-то причине неправильно инициализирует bean-компонент и не применяет аннотацию.
Я обнаружил одно исправление - использование автопроводки поля вместо автопроводки конструктора.Например:
У меня следующая ситуация:
@Service
public class MyService {
@Autowired
private MyRepository repository;
public List<Data> getData(){
return repository.findAll();
}
@Transactional
public void saveData(Data data){
repository.save(data);
}
}
Таким образом, бин правильно проксируется, и инфраструктура AOP может применять необходимые аннотации.