// totsp utility package package com.totsp.util; import java.util.*; import java.net.*; import javax.servlet.http.*; /** This is a simple TotSP utility class that it used to display HTTP server and client elements. It is intended to be used in JSP pages and servlets for debugging and informational purposes. All methods are static and simply return a string that is an html table representing respective method objects. author: charlie collins, copyleft TotSP, 2001 **/ public class JWebUtil { // attributes // constructors public JWebUtil() { } //operations /** sessionDump() dumps session ID and all session attributes (requires HttpSession object) **/ public static String sessionDump(HttpSession sessionObj) { Enumeration sessionEnum; String sessionId; String string1 = null; StringBuffer sb = new StringBuffer(); sessionId = sessionObj.getId(); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append(""); int i = 0; sessionEnum = sessionObj.getAttributeNames(); while (sessionEnum.hasMoreElements()) { i++; string1 = (String)sessionEnum.nextElement(); sb.append("\n"); sb.append("\n\n"); sb.append("\n"); } sb.append("
\n"); sb.append("the session object\n"); sb.append("
\n"); sb.append("session id = " + sessionId + "\n"); sb.append("
Element NameElement Contents
\n" + string1 + "\n\n" + sessionObj.getAttribute(string1) + "\n
\n"); sb.append("

\n"); return sb.toString(); } /** requestDump dumps requestURI and other request info as well as all headers and parameters present (requires HttpServletRequest object) **/ public static String requestDump(HttpServletRequest requestObj) { Enumeration headerEnum; Enumeration parameterEnum; String string1 = null; StringBuffer sb = new StringBuffer(); String requestURI = requestObj.getRequestURI(); String serverName = requestObj.getServerName(); String protocol = requestObj.getProtocol(); String method = requestObj.getMethod(); String remoteAddr = requestObj.getRemoteAddr(); String remoteHost = requestObj.getRemoteHost(); String queryString = requestObj.getQueryString(); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append(""); int i = 0; headerEnum = requestObj.getHeaderNames(); while (headerEnum.hasMoreElements()) { i++; string1 = (String)headerEnum.nextElement(); sb.append("\n"); sb.append("\n\n"); sb.append("\n"); } sb.append("\n"); sb.append("\n"); sb.append("\n"); sb.append(""); i = 0; parameterEnum = requestObj.getParameterNames(); while (parameterEnum.hasMoreElements()) { i++; string1 = (String)parameterEnum.nextElement(); sb.append("\n"); sb.append("\n\n"); sb.append("\n"); } sb.append("
\n"); sb.append("the request object\n"); sb.append("
\n"); sb.append("server name = " + serverName + "\n"); sb.append("
\n"); sb.append("protocol = " + protocol + "\n"); sb.append("
\n"); sb.append("method = " + method + "\n"); sb.append("
\n"); sb.append("remote address = " + remoteAddr + "\n"); sb.append("
\n"); sb.append("remote host = " + remoteHost + "\n"); sb.append("
\n"); sb.append("request URI = " + requestURI + "\n"); sb.append("
\n"); sb.append("query string = " + queryString + "\n"); sb.append("
Header NameHeader Contents
\n" + string1 + "\n\n" + requestObj.getHeader(string1) + "\n
Parameter NameParameter Contents
\n" + string1 + "\n\n" + requestObj.getParameter(string1) + "\n
\n"); sb.append("

\n"); return sb.toString(); } }