I agree and this is what I suggested in a previous mail: one needs a "Persistence Service" to persist the state of various ManagedObjects and be able to restore the state of a server between application start-ups.1) There will be some way of saving the current MBean state of the server and reloading it later. That way when you start the server, instead of reprocessing all the config files, it will just "deserialize" the MBeans into their previous state. Then the deployment scanner will update that state according to the current deploy directory (redeploying a service if the config file changed, for example). (Apparently this saving and loading is a work in progress at the moment.)
I disagree. It is possible to stop manually a J2EEManagedObject. When the server is shut-down and re-started, this same J2EEManagedObject could be accessed as runnable by the DependencyService and hence re-started. In other words, the state has not been exactly restored.2) There will be a "service controller" that manages the JSR-77 state of various objects in the server. I need to get more information about this from Dain. But the relevant part is that based on the above, all the applications that were previously deployed have MBeans, and those MBeans would brought back in the "stopped" state when the server is started. Then with the service controller in place, the service controller can go try to start the ones that were formerly running. Thus it is the service controller (or if not, then the MBeans), not the individual app DDs, which remember what state the different components are in.
An alternative could be to take a snapshot of the currently deployed J2EEManagedObject prior to shut-down a server (we will need a "Persistence Service" that Dain will support). Then, when the server is re-started, one reads this snapshot, which explicitely defines J2EEManagedObject as running, stopped, failed et cetera to restore the previous state. More accurately, if the J2EEManagedObject was running, then one startRecursive it. It is then up to the DependencyService to assess if it can actually restore exactly the same state.
This is my 2 cents.
Gianny
_________________________________________________________________
MSN Messenger 6 http://g.msn.fr/FR1001/866 : plus de personnalisation, plus de fun pour vous et vos amis�
