Para definir o escopo da Transação eu coloco a anotação @TransactionManagement(value=TransactionManagementType.CONTAINER) dentro da minha class, assim por padrão, as minha alterações de banco de dados executa tudo ou nada.
As classes (Vamos chamar de “fachada”) que possuem essa anotação tem um função especifica de fazer frente a uma funcionalidade por meio de um método. Quando as características da funcionalidades são semelhante eu agrupo essas funcionalidades na mesma classe. Um exemplo: a classe de “fachada” de usuário possui métodos cadastrar, remover, atualizar.
O problema é que a medida que o sistema aumenta as “fachadas” vão aumentando e eu sempre tenho que fazer o seguinte: anotar @TransactionManagement(value=TransactionManagementType.CONTAINER) na minha classe de “fachada” eu sei que todas minhas classes de fachada tem essa anotação então gostaria que isso fosse implícito.
Eu tentei via Interceptor mas seria uma troca para @Interceptors e como anotação não tem herança… Existe alguma solução?