Forums Register Login

Transaction is rolledback in ejbCreate(), ejbPostCreate(), or ejbRemove() and

+Pie Number of slices to send: Send
Hi,
Please clarify me the below doubt,

1. If the transaction is rolled back in any of the above three method, to which state bean will be moved? Is bean is moved to pooled state or method ready state.

2. In an entity bean, if the client gets the RuntimeException,
(1) can he continue with that EJBObject?
(2) Will the container creates new instance of the bean for the client?


Thanks in Advance
+Pie Number of slices to send: Send
1. If the transaction is rolled back in any of the above three method, to which state bean will be moved? Is bean is moved to pooled state or method ready state.
--- Can u tell which 3 methods you are talking about here? Since you are mentioning that transaction is getting rolled back, I assume that the bean is in method-ready state. In any case, the bean instance will be discarded/killed - goes to does-not-exist state.

2. In an entity bean, if the client gets the RuntimeException,
(1) can he continue with that EJBObject?
-- The bean instance will be killed. If the client still has reference to EJBObject and invokes methods on it, it receives java.rmi.NoSuchObjectException.

(2) Will the container creates new instance of the bean for the client?

-- Depends. If an instance is available in the pool, it can take one from there. Otherwise, a new instance will be created.
+Pie Number of slices to send: Send
 

Originally posted by Keerthi P:
1. If the transaction is rolled back in any of the above three method, to which state bean will be moved? Is bean is moved to pooled state or method ready state.
--- Can u tell which 3 methods you are talking about here? Since you are mentioning that transaction is getting rolled back, I assume that the bean is in method-ready state. In any case, the bean instance will be discarded/killed - goes to does-not-exist state.

2. In an entity bean, if the client gets the RuntimeException,
(1) can he continue with that EJBObject?
-- The bean instance will be killed. If the client still has reference to EJBObject and invokes methods on it, it receives java.rmi.NoSuchObjectException.

(2) Will the container creates new instance of the bean for the client?

-- Depends. If an instance is available in the pool, it can take one from there. Otherwise, a new instance will be created.




For Question 1 - I mean three methods are, ejbCreate(), ejbPostCreate(), or ejbRemove(). i.e. if the transaction is rolled back while executing any of these 3 methods.
+Pie Number of slices to send: Send
Originally posted by Keerthi P:
1. If the transaction is rolled back in any of the above three method, to which state bean will be moved? Is bean is moved to pooled state or method ready state.

in the ejbCreate()/ejbPostCreate()/ejbRemove() methods in the case of an entity bean the instance will move from ready state to pooled state, If a transaction is rollback.

the following is an excerpt from the spec

the container will transition the instance to the pooled state. There are three possible
transitions from the ready to the pooled state: through the ejbPassivate() method,
through the ejbRemove() method, and because of a transaction rollback for ejbCreate(),
ejbPostCreate(), or ejbRemove()


2. In an entity bean, if the client gets the RuntimeException,
(1) can he continue with that EJBObject?
-- The bean instance will be killed. If the client still has reference to EJBObject and invokes methods on it, it receives java.rmi.NoSuchObjectException.

(2) Will the container creates new instance of the bean for the client?

-- Depends. If an instance is available in the pool, it can take one from there. Otherwise, a new instance will be created
If I'd had more time, I would have written a shorter letter. -T.S. Eliot such a short, tiny ad:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com


reply
reply
This thread has been viewed 735 times.
Similar Threads
Some basic doubts on session beans...
Entity Bean Instance Life Cycle
System Exceptions and bean instances
a mock question about transcation
Transaction propagation in EJB
More...

All times above are in ranch (not your local) time.
The current ranch time is
Mar 28, 2024 18:30:47.