Description
This issue is related to CAMEL-10914.
Desscription:
Route1 - CXFConsumer with endpoint address /test is already running
Route2 - Gets started with CXFConsumer with same endpoint /test
The expected behavior: Route2 startup fails (endpoint already registered on address). Route1 keeps running.
Expected error on Route2 (endpoint already registered on address):
https://github.com/apache/cxf/blob/master/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/SoapBindingFactory.java#L918
Due to the change in CAMEL-10914, server.destroy() will be called after failed startup:
https://github.com/tadayosi/camel/commit/6d31d169dc17138ed02ad1164a4b2209729677fc#diff-174b6ca7cb178d3dc464aa9355d148d95fc0a3ad3f7edb60f0293fac988d3e05R100
And it will eventually unregister the route:
https://github.com/apache/cxf/blob/master/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java#L191
Observed behavior:
After failed startup of Route2, Route1 is not registered anymore (HTTP 404 when trying to call /test). I could not reproduce this with embedded Jetty, but we experience this with tomcat on production.
Do you have any suggestion how this could be reproduced in a test using tomcat? Is there a simple way to replace jetty with tomcat?