Problem to close a Jetty HTTP component
Context :
In HttpDIscoveryProxy, using 2 test classes : one for the discovery mode and on for the validated mode. Each class work only with mocks. Several composite files are used, one for the main proxy and 3 others for the mocks. The conposite files are loaded with FraSCAti.processComposite() method and unloaded with FraSCAti.close() method. The used composite works with HTTP binding and WS binding.
The tests works very well separatelly in Eclipse.
Problem :
when a maven build is launched, the 2 tests are executed one after the other. The first test works well but the second hang on an HTTP service. It seems that a composite file cannot be successfully loaded in the second test. Jetty process stay with a 'STARTING' status during the start of the HTTP component.
How to reproduce :
See the special test class FraSCAtiBindingHttpCloseBugTest.java. Open ithe HttpDiscoveryProxy project in Eclipse and run this class a JUnit test.
Origin of the problem :
In the class org.ow2.frascati.servlet.manager.JettyServletManager, in the method unregisterServlet(final String uri), there is still a TODO tag : jettyServer.removeServant(URL url). It seems that the portion of code we try to use is not yet implemented.
This issue is also reported on EasySOA project at https://github.com/easysoa/easysoa-model-demo/issues/37