It is impossible to inject a service into a handler of 'RegistryShutdownListener .registryDidShutdown' since the registry is already shutdown at this point. this makes it difficult to perform some more intricate termination logic when multiple services need to collude.
I propose the inclusion of a new interface 'RegistryAboutToShutdownListener' with the method 'registryAboutToShutDown'.
In the case of a tapestry application, it would need to be called after Http requests have been disallowed, but before the registry becomes unusable.
There may need to be some ordered configuration to control service dependencies as they shut down, and I expect some other considerations I haven't thought of....