Package coreservlets;
Import java. Io .*;
Import javax. servlet .*;
Import javax. servlet. http .*;
Import java. util .*;
/** Creates a table showing the current value of each
* Of the Standard CGI variables.
* <P>
* Taken from core servlets and assumerver pages
* From Prentice Hall and Sun Microsystems press,
* Http://www.coreservlets.com /.
* 2000 Marty Hall; may be freely used or adapted.
*/
Public class showcgivariables extends httpservlet {
Public void doget (httpservletrequest request,
Httpservletresponse response)
Throws servletexception, ioexception {
Response. setcontenttype ("text/html ");
Printwriter out = response. getwriter ();
String [] [] variables =
{"Auth_type", request. getauthtype ()},
{"Content_length ",
String. valueof (request. getcontentlength ())},
{"Content_type", request. getcontenttype ()},
{"Document_root ",
Getservletcontext (). getrealpath ("/")},
{"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 ",
String. valueof (request. getserverport ())},
{"Server_protocol", request. getprotocol ()},
{"Server_software ",
Getservletcontext (). getserverinfo ()}
};
String title = "servlet example: showing CGI variables ";
Out. println (servletutilities. headwithtitle (title) +
"<Body bgcolor = \" # fdf5e6 \ "> \ n" +
"<H1 align = \" center \ ">" + title + ""<Table border = 1 align = \" center \ "> \ n" +
"<Tr bgcolor = \" # ffad00 \ "> \ n" +
"<TH> CGI variable name <TH> value ");
For (INT I = 0; I <variables. length; I ++ ){
String varname = Variables [0];
String varvalue = Variables [I] [1];
If (varvalue = NULL)
Varvalue = "<I> not specified </I> ";
Out. println ("<tr> <TD>" + varname + "<TD>" + varvalue );
}
Out. println ("</table> </body> }
/** Post and get requests handled identically .*/
Public void dopost (httpservletrequest request,
Httpservletresponse response)
Throws servletexception, ioexception {
Doget (request, response );
}
}