If a host has multiple aliases, or if there is a load balancer in-front of a cluster, then upon accessing an endpoint, the original endpoint's address is rewritten and therefore displayed incorrectly.
Steps to reproduce:
1. Register a CXFNonSpringServlet under some path (e.g. /webservices)
1. Publish some endpoints (e.g. /foobar, /barfoo)
2. Set multiple aliases for a node (e.g. node1, host1, server1)
3. Access the servlet /webservices via one of the aliases (e.g. node1)
4. Access one of the endpoints (e.g. /foobar)
5. Now access the /webservice via another alias (e.g. node2)
6. Access the endpoint /barfoo via node2
The endpoint address for /foobar has changed to http://node1/foobar, while the endpoint address for /barfoo has changed to http://node2/barfoo. This change is triggered via org.apache.cxf.transport.servlet.ServletController.updateDestination(request, d)
Inside of updateDestination it is only verified whether the address of the AbstractHTTPDestination begins with an 'http' prefix and if not, then the address is updated.
No idea if that's normal behavior or if it's a (valid) bug.