You cannot use option C,D and E as ejbLoad(), ejbStore() and ejbPassivate() are container callbacks and
you should not call these methods on Address bean from Customer bean. According to the spec, they are meant to be called by the container.
Note that the scenario explained is a BMP case. So it is upto the implementation to decide how the related beans are loaded and removed. In this case, Customer bean 'contains' Address bean, a parent-child relationship.
A. The ejbRemove() method of Customer invokes the remove() method of Address.
This could be a possible implemention. This will have an effect of deleting the associated Address record whenever a Customer record is deleted.
B. The ejbLoad() method of Customer invokes the findByPrimaryKey() method of AddressHome.
This could also be a possible implementation. This will have an effect of loading the Address details into a Customer bean whenever the Customer bean is loaded at the beginning of transaction.
[ February 22, 2005: Message edited by: Keerthi P ]