Why do we need HomeInterface? What cannot the HomeInterface and RemoteInterface combined into one interface.
I think the ejb home object is a sigleton object, therefore only one object this type is required (for creating bean instances). Why create home objects for every client? One home object can be used per bean.
The developers of EJB specifications wanted to separate the job of creating/finding/removing Ejbs ( ie lifecycle) from the business method or the actual functionality that EJB is designed for.
It makes for good object oriented design in which business functionality is considered separate from the EJB itself.