@Target(value={TYPE,METHOD})
@Retention(value=CLASS)
public @interface NoTransaction
ClassTransaction
on a class, the invocations of all public methods
will be recorded as transactions. To exclude selected methods, annotate them with @NoTransaction.
If you set the ClassTransaction.inheritance()
parameter to something other that
Inheritance.Mode.NONE
, methods in derived classes will be instrumented as well.
You can annotate selected methods in derived classes with @NoTransaction, or you can annotate
entire derived classes with @NoTransaction. In the latter case, all methods of the entire derived class
will be excluded. However, this annotation is not inherited itself, so classes derived from a class that is
annotated with @NoTransaction are again eligible for transaction processing.