As you all know, every bean class must declare at least one ejbCreate() method (unless it's a stateful session bean whose home interface has no create() method).
create is mandetory for SessionBean , optional for EntityBean and no create as there is no home interface for MessageBean Is it not.? Am i missing something fundamental here in understanding what ur trying to say???
The ejbCreate is in bean class and for other beans it has got matching create() in the home interface for the client to initiate the creation. But in case of MDB there is no matching as there is no client and no HOME. Observe even in case of Staless SessionBean even if there is matching create it has nothing to with the ejbCreate() in the bean class.
This is a very nice point you raised Roger. I did not looked at ejbCreate() and create() this way before. This is what My understanding is ..IF anyone has more to add......
It's almost as if the bean class is implementing a hidden interface which has this method declared:
Is there some good reason ejbCreate() is not declared in javax.ejb.MessageDrivenBean?
The way I look at it is the developers only way to participate in beans creation. Obtain resources that are required or do things like that if business needs it. Without this method there is no way for the developer to say a word in beans creation