1 - remove since ejbRemove is never called by Client but Container. In case of entity bean calling remove means client is done not just with the EJB Object but with the entity in the database also which will be permanently deleted.
1. The Client Calls this method to tell the container that he(client) is done using the bean's EJB Object reference:
Here, Client is done with EJBObject reference not with entity. So if remove method is called, Entity in Database will be deleted. #1 is applicable for Session Bean, where if client is done, he/she can call remove method. it is not possible with Entity Bean. No method for doing so in Entity Bean. :-)
Entity Bean's remove() will actually remove entity from the database.You are correct, there is no way client can specify that he is done with the EJBObject(which can be representing session or entity or message-driven)