This week's book giveaways are in the Refactoring and Agile forums. We're giving away four copies each of Re-engineering Legacy Software and Docker in Action and have the authors on-line! See this thread and this one for details.
I came across this question in a mock exam. Which of the following EJB Transaction Attributes ensures that the method call always takes place in a transaction, either client started, or container started? Select 2 correct Choices. 1.TX_MANDATORY
2.TX_REQUIRED 3.TX_REQUIRES_NEW Answer given: 2,3. Why is not 1 a valid option.
posted 12 years ago
TX_REQUIRED and TX_REQUIRES_NEW will always run in a transaction. TX_REQUIRED will start a new transaction where non exists and TX_REQUIRES_NEW will always run in a new transaction irrespective of whether one exists or not but TX_MANDATORY will throw an exception if called without an existing transaction.