Spring shutdown event that fires immediately before ApplicationContext is destroyed?

Neron picture Neron · Jun 5, 2012 · Viewed 8.2k times · Source

I am looking for an interceptor or a trigger to know that, all the context beans are destroyed and the applicationcontext instance is about to destroy itself. So I can do one process at the end of the application lifetime.

There is this event type ContextClosedEvent, which is close to the thing that I wanna do but, it throws the event after destruction of beans. I thing it comes with the close() method of the applicationcontext. So it doesn't fit to my need

Any ideas?

Regards

Ali

Answer

Japan Trivedi picture Japan Trivedi · Jun 6, 2012

You can use registerShutDownHook() method of the abstract application context class. For more details have a look at this.

UPDATE

Then you should try @PreDestroy annotation on top of the method where you want to run something in the end when the spring context is about to destroy.

Hope this helps you. Cheers.