(Using Java 6 and Tomcat 6.)
Is there a way for me to get HttpServletRequest.getRemoteUser() to return a value in my development environment (i.e. localhost) without needing to modify my application’s web.xml file?
The reason I ask is that the authentication implementation when the app is deployed to a remote environment is handled by a web server and plugged-in tool. Running locally I obviously do not have the plugged-in tool or a separate web server; I just have Tomcat 6. I am trying to avoid adding code to my application merely to support development on my localhost.
I am hoping there is a modification I can make to the context.xml or server.xml files that will let me set the remote user ID or that will try to pull it from a HTTP header or something.
Here is a proof of concept
Valveimplementation which does it:(Tested with Tomcat 7.0.21.)
Compile it, put it inside a jar and copy the jar to the
apache-tomcat-7.0.21/libfolder. You need to modify theserver.xml:I suppose it works inside the
EngineandContextcontainers too.More information: