This week's giveaway is in the Spring forum.
We're giving away four copies of REST with Spring (video course) and have Eugen Paraschiv on-line!
See this thread for details.
The moose likes EJB Certification (SCBCD/OCPJBCD) and the fly likes Doubt in BMT 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 "Doubt in BMT" Watch "Doubt in BMT" New topic

Doubt in BMT

kumar mahesh

Joined: Nov 28, 2007
Posts: 16
UserTransaction ut = validContext.getUserTransaction();

Is it correct to invoke the setRollBackOnly method in a BMT. What will happen when this method is invoked?
Nikhil Jain
Ranch Hand

Joined: May 15, 2005
Posts: 385
This works. UserTransaction can invoke setRollbackOnly method. But this method should be of UserTransaction rather than EJBContext.

I tried this, javax.persistence.TransactionRequiredException: EntityManager must be access within a transaction & on the client it said
BMT stateful bean 'Process' did not complete user transaction properly status=STATUS_MARKED_ROLLBACK.

But why did it give such error on the server. Should'nt it have given a better exception like, EJBTransactionRolledbackException .Exception etc

SCJP 1.4, SCWCD 1.4, SCBCD 1.5
Nikhil Jain
Ranch Hand

Joined: May 15, 2005
Posts: 385
Nikhil Jain
Ranch Hand

Joined: May 15, 2005
Posts: 385

In CMT, this method causes TransactionRequiredException. But it should be transactionRolledBackexception. This error is generated when server tries to commit.

Any Idea?
I agree. Here's the link:
subject: Doubt in BMT
It's not a secret anymore!