There are many older post for this on stackoverflow and so on https://stackoverflow.com/questions/10050550/why-does-getcontextpath-under-a-proxy-return-the-internal-path-inside-httpserv
but i wonder what the latest state of that is, we have a lot of proxy settings for host and scheme But is there something (a header) that a proxy can set so that Tomcat returns the right context path on that getContextPath() call? Or are there headers that we have to check manually? If this is not the case then i guess the only way to fix this is to make it a configuration in our product something like String context = settings.getProperty("context.path", request.getContextPath()); (get the context from the settings if not there use the default value which is from the request) So the problem is mostly because of virtual hosts i guess where Proxy / is mapped to AppServer /Webapp1 -- Johan Compagner Servoy