• 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 Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Liutauras Vilda
  • Henry Wong
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Al Hobbs
  • Carey Brown
Bartenders:
  • Piet Souris
  • Mikalai Zaikin
  • Himai Minh

jdiscuss question

 
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
i cannot solve this question
http://jdiscuss.com/Enthuse/jsp/ShowAvailableTests.jsp
Test - 3
Question - 2
(sorry for the inconvinience i cannot paste it as it has figures)

can some one explain the basic principle.
 
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
The question has to do with the transaction attributes for methods in a CMT bean.

methodA : RequiresNew
methodB : Required
methodC : NotSupported
methodD : RequiresNew

methodA calls methodB. methodB calls methodC and methodD.

1. methodA runs in TxA.

2. Since methodB's transaction attribute is Required and it is called from methodA with an existing transaction context TxA, methodB runs in that existing transaction of TxA.

3. methodC's transaction attribute is NotSupported and it is called from methodB. Since there is an existing transaction TxA for methodB, the context for the caller method (methodB) will be suspended in this case and methodC will run in an "unspecified transaction context" .

4. methodD's transaction attribute is RequiresNew and it is called from methodB. Since there is an existing transaction TxA for methodB, the caller's (methodB) transaction TxA gets suspended, and methodD will run with a new transaction TxD.


So, the correct answer is :
methodA (TxA) --> methodB (TxA)
methodB (TxA) --> methodC (no transaction context)
methodB (TxA) --> methodD (TxD)
 
preethi bhat
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
thank u Anshul
 
incandescent light gives off an efficient form of heat. You must be THIS smart to ride this ride. Tiny ad:
Free, earth friendly heat - from the CodeRanch trailboss
https://www.kickstarter.com/projects/paulwheaton/free-heat
reply
    Bookmark Topic Watch Topic
  • New Topic