Details
Description
CxfSpringEndpoint.setApplicationContext(ApplicationContext) creates a org.apache.cxf.Bus [1] whose shutdown() method is never called. This is one of the causes for a memory leak in WildFly Camel (WFC) [2].
The steps to reproduce for WFC are as follows:
1. Start the WFC
2. run the CXFWSConsumerIntegrationTest several times
3. Force GC on WFC
4. Get a heap dump
NOT OK: There are as many stale SpringBus instances as many times the test was run.
Expected: no SpringBus instances there
[1] https://github.com/apache/camel/blob/c69affc49415b190645ce25536ffd62348c4fe34/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java#L251
[2] https://github.com/wildfly-extras/wildfly-camel/issues/2649