The moose likes EJB Certification (SCBCD/OCPJBCD) and the fly likes question about Transaction atrribute Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of REST with Spring (video course) this week in the Spring forum!
JavaRanch » Java Forums » Certification » EJB Certification (SCBCD/OCPJBCD)
Bookmark "question about Transaction atrribute" Watch "question about Transaction atrribute" New topic

question about Transaction atrribute

Jing Yu

Joined: Apr 20, 2010
Posts: 1

Assuming aMethod, bMethod, cMethod are methods of interface A, their transaction attributes are

why,aMethod's transaction attribute is REQUIRED ?

If the bean class has superclasses, the following additional rules apply.
• A transaction attribute specified on a superclass S applies to the business methods defined by S.
If a class-level transaction attribute is not specified on S, it is equivalent to specification of
TransactionAttribute(REQUIRED) on S.
• A transaction attribute may be specified on a business method M defined by class S to override
for method M the transaction attribute value explicitly or implicitly specified on the class S.
• If a method M of class S overrides a business method defined by a superclass of S, the transaction
attribute of M is determined by the above rules as applied to class S.

I can't understand this rule....
Umakanth Godavarthy
Ranch Hand

Joined: Nov 10, 2005
Posts: 37
why,aMethod's transaction attribute is REQUIRED ?

This is because aMethod is overridden by ABean and the default TransactionAttribute is "Required" for beans with CMT.

Further, what this rule says is transaction attributes are not inherited by the subclasses.

Hope this helps in your understanding.
amit punekar
Ranch Hand

Joined: May 14, 2004
Posts: 544
Further, what this rule says is transaction attributes are not inherited by the subclasses.

I think this is not about Inheritance of the transaction attribute though it correctly apply in such scenario.

In other words if aMethod() in ABean gets the Transaction attribute as "Required" by default which overrides the one that is specified in SomClass which is super class.

Hope this helps.
I agree. Here's the link:
subject: question about Transaction atrribute
It's not a secret anymore!