By Alvin Alexander. Last updated: June 4, 2016
I created a JSP this morning that prints out the equivalent of most traditional CGI parameters. Sometimes I use these to debug a problem, other times I use them within JSP/servlet code for other non-debug purposes.
Here's the Java source code for my JSP CGI page, which I named cgiParams.jsp. As you can see, most of these variables come from the JSP request object:
JSP-equivalents to CGI variables:
AUTH_TYPE: <%= request.getAuthType() %>
CONTENT_LENGTH: <%= request.getContentLength() %>
CONTENT_TYPE: <%= request.getContentType() %>
PATH_INFO: <%= request.getPathInfo() %>
PATH_TRANSLATED: <%= request.getPathTranslated() %>
QUERY_STRING: <%= request.getQueryString() %>
REMOTE_ADDR: <%= request.getRemoteAddr() %>
REMOTE_HOST: <%= request.getRemoteHost() %>
REMOTE_USER: <%= request.getRemoteUser() %>
REQUEST_METHOD: <%= request.getMethod() %>
SCRIPT_NAME: <%= request.getServletPath() %>
SERVER_NAME: <%= request.getServerName() %>
SERVER_PORT: <%= request.getServerPort() %>
SERVER_PROTOCOL: <%= request.getProtocol() %>
SERVER_SOFTWARE: <%= getServletContext().getServerInfo() %>
Other parameters I'm often interested in:
Request URI: <%= request.getRequestURI() %>
Request URL: <%= request.getRequestURL() %>
Request Context Path: <%= request.getContextPath() %>
Real Path: <%= getServletContext().getRealPath("/") %>
And here's the actual output I get when I hit this JSP from my browser. I recorded this output with the JSP running on my Mac laptop under Tomcat:
JSP-equivalents to CGI variables: AUTH_TYPE: null CONTENT_LENGTH: -1 CONTENT_TYPE: null PATH_INFO: null PATH_TRANSLATED: null QUERY_STRING: null REMOTE_ADDR: 127.0.0.1 REMOTE_HOST: localhost REMOTE_USER: null REQUEST_METHOD: GET SCRIPT_NAME: /cgiParams.jsp SERVER_NAME: localhost SERVER_PORT: 8080 SERVER_PROTOCOL: HTTP/1.1 SERVER_SOFTWARE: Apache Tomcat/4.1.31 Other parameters I'm often interested in: Request URI: /blog/cgiParams.jsp Request URL: http://localhost:8080/blog/cgiParams.jsp Request Context Path: /blog Real Path: /Users/alvin/tomcat-4.1.31/webapps/blog/
Here are a few good places where you can find more information on this topic:

