I have a web application that uses Spring and CXF (currently 2.4.2 but I have reproduced this on 2.4.6 and 2.5.2 as well) and is deployed on Tomcat.
The application is initialized using the org.springframework.web.context.ContextLoaderListener.
Starting and shutting the application down works like a charm but if I try to refresh the Spring application context, using ((ConfigurableApplicationContext)applicationContext).refresh(); I run into problems.
The application context first destroys all its beans (including CXFBusImpl, or rather its subclass SpringBus). SpringBus however calls ctx.close() on its application context - leading to a NullPointerException when the application context shortly after tries to close its bean factory:
I think that SpringBus shouldn't call ctx.close() in destroyBeans(). I tried removing this row and rebuilding CXF myself which fixed the problem (and I couldn't detect any other problems starting or shutting down).
|Field||Original Value||New Value|
|Status||Open [ 1 ]||Resolved [ 5 ]|
|Assignee||Daniel Kulp [ dkulp ]|
|Fix Version/s||2.4.7 [ 12319492 ]|
|Fix Version/s||2.5.3 [ 12319491 ]|
|Resolution||Fixed [ 1 ]|
|Status||Resolved [ 5 ]||Closed [ 6 ]|
|Transition||Time In Source Status||Execution Times||Last Executer||Last Execution Date|
|6d 9h 23m||1||Daniel Kulp||15/Feb/12 19:24|
|23h 35m||1||Jens Borgland||16/Feb/12 19:00|