In regards to configuring EJBs within the Geronimo framework - what consideration is their for configuring (tweaking) the EJBs while the application is running? If the EJBs are configured through an inheritance structure then changing their values in a multithreaded environment will be highly unpredictable, complicated, or slow.
On the otherhand if we use composition, changing the configuration can be performed by changing the configuring POJO - much safer and does not require the pooled Beans to be stopped to make changes to them. It also allows appropriate encapsulation and will not force "implementation" inheritance which can be a nightmare in changing and maintaining. Can we also look at obtaining the configuration from another angle? - instead of trying to generate a generic model to configure all EJBs, can we not model some manor in which each EJB type can configure itself from some (or many) object models loaded from XML, text files, binary store... etc. By utilising a bridge pattern or mutliple bridges on top of each other (sorry about the design patterns) we can make the configuration of Geronimo extensible to various forms thus not limiting us at this stage.
