-
Bug
-
Resolution: Won't Do
-
Major
-
None
-
2.3.x
-
None
Given the following stereotype annotation:
@Inherited @Stereotype @Transactional(Transactional.TxType.SUPPORTS) @Retention(RetentionPolicy.RUNTIME) @Target({ ElementType.TYPE, ElementType.METHOD }) public @interface TxSupports { }
For the following observer method, the transactional interceptor is not invoked:
@TxSupports
public void observe(@Observes(during = TransactionPhase.BEFORE_COMPLETION) MyEvent event) { }
When using the same annotation on type level, the interceptor is invoked:
@TxSupports public class MyObserverType { public void observe(@Observes(during = TransactionPhase.BEFORE_COMPLETION) MyEvent event) { } }
When using the @Transactional annotation directly on method level, the interceptor is invoked:
@Transactional(Transactional.TxType.SUPPORTS)
public void observe(@Observes(during = TransactionPhase.BEFORE_COMPLETION) MyEvent event) { }