aspose file tools*
The moose likes EJB Certification (SCBCD/OCPJBCD) and the fly likes Remove methods in component or home interface Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Certification » EJB Certification (SCBCD/OCPJBCD)
Bookmark "Remove methods in component or home interface " Watch "Remove methods in component or home interface " New topic
Author

Remove methods in component or home interface

Ralph Jaus
Ranch Hand

Joined: Apr 27, 2008
Posts: 342
I'm completely confused if it is possible to call a remove method on the home or component
interface of a stateful session bean within a transaction.

What causes the confusion are the following contradicting qoutes form core spec:

core spec 4.4.4, page 82:
If a session bean instance is participating in a transaction, it is an error for a client to
invoke the remove method on the session object's home or component interface object. The
container must detect such an attempt and throw the javax.ejb.RemoveException to the client.
The container should not mark the client's transaction for rollback, thus allowing the client to recover.

In contrast core spec 4.4 on page 76 states:
When the client calls a business method of the bean that has been designated as a Remove
method, or a remove method on the home or component interface, the container invokes PreDestroy
lifecycle callback interceptor method(s) (if any) for the bean instance after the Remove method
completes. This ends the life of the session bean instance.

So, is it allowed to call a remove method on the home or component interface or not ?
Any help is appreciated.


SCJP 5 (98%) - SCBCD 5 (98%)
Christophe Verré
Sheriff

Joined: Nov 24, 2005
Posts: 14687
    
  16

"4.4.4 Restrictions for Transactions" are restrictions. It means that what is stated in 4.4 in true, except in these special cases. But the part you are referring to is true for EJB2.x only (calling remove() on home or component interface)


[My Blog]
All roads lead to JavaRanch
Ralph Jaus
Ranch Hand

Joined: Apr 27, 2008
Posts: 342
Thanks Christophe.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Remove methods in component or home interface
 
Similar Threads
Remove method and rollback
client calling remove() twice
Exceptions question
Remove method inside transaction for stateful bean
Stateful Beans / Passivation / Extended Persistence