Spring:如何关闭共享上下文

时间:2015-10-02 17:33:17

标签: java spring war ear

This question描述了一种很好的方法,可以将共享的Spring ApplicationContext作为ApplicationContexts的父级,在EAR中使用几个WAR。 (另请参阅ContextLoader.loadParentContext。)这样可以正常工作,但是当服务器关闭时,从不在此父上下文上调用ApplicationContext.close()。在我们的情况下,这导致服务器永远不会关闭,因为父ApplicationContext包含一个ThreadPool并启动ehcache,这也会启动一些(非守护进程)线程。

有人知道如何关闭这个共享的ApplicationContext吗?您当然可以将ContextListener放在其中一个WAR中,只需在共享的ApplicationContext上调用close(),但理想情况下,只有在所有WAR ApplicationContext关闭后才会自动关闭它。

0 个答案:

没有答案