Package javax.ejb

Annotation Interface TransactionAttribute


@Target({METHOD,TYPE}) @Retention(RUNTIME) public @interface TransactionAttribute
The TransactionAttribute annotation specifies whether the container is to invoke a business method within a transaction context. The TransactionAttribute annotation can be used for session beans and message driven beans. It can only be specified if container managed transaction demarcation is used.

The annotation can be specified on the bean class and/or it can be specified on methods of the class that are methods of the business interface or no-interface view.

Specifying the TransactionAttribute annotation on the bean class means that it applies to all applicable business methods of the class. Specifying the annotation on a method applies it to that method only. If the annotation is applied at both the class and the method level, the method value overrides if the two disagree.

The values of the TransactionAttribute annotation are defined by the enum TransactionAttributeType. If the TransactionAttribute annotation is not specified, and the bean uses container managed transaction demarcation, the semantics of the REQUIRED transaction attribute are assumed.

Since:
EJB 3.0
See Also: