• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Paul Clapham
  • Jeanne Boyarsky
  • Junilu Lacar
  • Henry Wong
Sheriffs:
  • Ron McLeod
  • Devaka Cooray
  • Tim Cooke
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Frits Walraven
  • Tim Holloway
  • Carey Brown
Bartenders:
  • Piet Souris
  • salvin francis
  • fred rosenberger

CMP & BMT

 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have a question about transaction. For component-managed persistance session beans and MDBs, can they use bean managed transaction? Are they contradict?
Thanks in advance!
 
Ranch Hand
Posts: 199
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Any session or MDBs can use either container managed transaction (CMT) demarcation or BMT . 2.0 Entity beans must use only CMT.
Persistence has nothing to do with transactions, these are totally different areas.
Only the implementation has some kind of similarity. Both CMP and CMT are used thru deployment descriptor elements, whereas BMP uses progarmming thru JDBC and BMT uses programming thru javax.transaction APIs.
Thanks, Sudd
 
XueRong Weng
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks a lot for clarifying the concept. I'm much clearer now.
I have one more question. On my book, it is stated BMT beans must not use the setRollbackOnly() and getRollbackOnly. What's the reason behind?
 
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
BMT beans (only session and MDB) call setRollbackOnly() and getStatus() method on the javax.transaction.UserTransaction, which you get from calling javax.ejb.EJBContext.getUserTransaction() method.
BTM bean will get IllegalStateException if it invokes setRollbackOnly() or getRollbackOnly() directly on EJBContext.
Hope this helps.
 
I've read about this kind of thing at the checkout counter. That's where I met this tiny ad:
Devious Experiments for a Truly Passive Greenhouse!
https://www.kickstarter.com/projects/paulwheaton/greenhouse-1
    Bookmark Topic Watch Topic
  • New Topic