axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sanjiva Weerawarana <>
Subject Re: [Axis2] Axis2 Lifecycle
Date Sat, 29 Apr 2006 03:10:12 GMT
Hi Jens,

> While Tony reported this today for services only (AXIS2-633) it seems Axis2
> does not have full lifecycle support.
> Since I was trying to come up with a fix for Axis2-595 I was looking for
> something within Axis2 codebase which would help to do some cleanup during
> shutdown. It turned out that the Axis2 deployment engine is not exposed for
> clean shutdown and Handler#cleanup()/ TransportSender#cleanUp(MessageContext
> msgContext) is never called.

Handler.cleanup() was never implemented and I thought it was removed! If
not it should be .. we have an on-going discussion around some cleanup
activity like that (look for a thread originated by Bill Nagy) but we
agreed to do that post 1.0.

TransportSender.cleanup() (Please refactor to cleanup instead of
cleanUp) should indeed be called.

> Before spending too many cycles in refactoring could someone from the axis2
> team comment on the current plans for full lifecycle support, especially
> shutdown which can be called externally.
> Specifically I would like to
> - Shutdown the deployment engine and with it the scheduler,


> - Ensure to call all cleanup() methods,

We should be calling service.destroy(ServiceContext) and
TransportSender.cleanup. (The latter should prolly take as an argument
the config context?)

> - Release all Classloader references during shutdown,


> - Remove the ShutdownHook from JMSSender and move it to a global
> ShutdownHook which is used for standalone axis2 mode only (the sender should
> deregister from JMS within cleanup() ).


I'd wait for Deepal to comment though- he's the one who did the cleanup
stuff IIRC so I could be out of sync a bit ...

In any case service.destroy(ServiceContext) should get called for sure;
so maybe you can start there!



View raw message