An EJB client has no current transaction. It invokes the business method of an EJB using container-managed transaction demarcation. The business method executes within the scope of a transaction. Which of the following are possible values for the bean method's transaction attribute? a)NotSupported b)Supports c)Required d)RequiresNew e)Mandatory Multiple Select - Please select all of the correct answers (this question has 2 correct choices).
Hi Vishakha Since the business method must be executed within a transaction, I select c and d require: if client transaction exists, the container will propagate the client transaction. Otherwise, container will create a new transaction. requireNew: if client transaction exists, the container will suspend the current transaction and create a new one. Otherwise the container will create a new transaction. Joey
a) NotSupported - would not start a transaction, if one exists it suspended for this method. b) Supports - would not start a transaction, it executes in the trasactions scope if one is provided (in this case, there is none). e) Mandatory - a transaction context must exist before the method is called, otherwise an exception (something like transactionrequired) is thrown.