| Author |
TransactionRequiredException
|
Nikhil Jain
Ranch Hand
Joined: May 15, 2005
Posts: 383
|
|
Why does methods like merge, persist thrown transactionRequired Exception is method is invoked on a transaction-scoped persistence context? Does this mean that, these methods can only be invoked on extended persistence context?
|
SCJP 1.4, SCWCD 1.4, SCBCD 1.5
|
 |
Adam Tkaczyk
Greenhorn
Joined: Nov 29, 2007
Posts: 21
|
|
That is not true. Those methods trown TransactionRequiredException only when no transaction is available. The default transaction attribute for container managed ejb beans is REQUIRED. If you use merge, persist within transaction everything will be fine. Maybe you have set transaction attribute on business method wich invoke merge, persist to : NEVER , NOT_SUPPORTED or SUPPORTS. In this case container will not create transaction context and exception may be thrown. I suggest you to read JSR 220 specification for further informations. "EJB Core Contracts and Requirements" pages from 343 to 345
|
SCJP5
|
 |
 |
|
|
subject: TransactionRequiredException
|
|
|