home *** CD-ROM | disk | FTP | other *** search
/ PC World 1999 November / PCWorld_1999-11_cd.bin / Komunik / Sambar / _setup.1 / info.java < prev    next >
Text File  |  1999-08-28  |  6KB  |  140 lines

  1. import java.io.*;
  2. import java.util.*;
  3. import javax.servlet.*;
  4. import javax.servlet.http.*;
  5.  
  6. public class info extends HttpServlet {
  7.   
  8.   ServletConfig config;
  9.  
  10.   public void init(ServletConfig tconfig) throws ServletException {
  11.     super.init(tconfig);
  12.     config=tconfig;}
  13.  
  14.   public String getServletInfo() {
  15.       return "Info version 1.8: a demonstration and diagnostic servlet from vqSoft";}
  16.  
  17.   private void pp(PrintWriter os, String name, String value) {
  18.       os.print("<b>"+name+": </b>");
  19.       if (value==null)
  20.       os.print("<b>none</b>");
  21.     else
  22.       os.print(value);
  23.     os.println("<br>");}
  24.   
  25.   private void pp(PrintWriter os, String name, int value) {
  26.     pp(os, name, String.valueOf(value));
  27.   }
  28.  
  29.   public void dostuff(HttpServletRequest req, HttpServletResponse rep) throws ServletException, IOException {
  30.       log("invoked");
  31.     rep.setContentType("text/html");
  32.       PrintWriter os=rep.getWriter();
  33.     os.println("<html>");
  34.       os.println("<head><title>Info servlet</title></head>");
  35.       os.println("<body bgcolor=#add8af>");
  36.       os.println("<table border=0 cellspacing=0 cellpadding=2 cols=3 width=100%>");
  37.     os.println("<tr><td valign=top>");
  38.     os.println("<h1 align=center>Info servlet</h1>");
  39.     os.println("<hr>");
  40.     os.println("<p>This page was generated by <i>Info</i> version 1.8, a demonstration and diagnostic servlet supplied with <a href=http://www/vqsoft.com/vq/server/index.html><i>vq</i>Server</a>. ");
  41.     os.println("<i>Info</i> lists its initialisation parameters, information about the http request which invoked it and the http request parameters passed to it.</p>");
  42.     os.println("<hr>");
  43.     
  44.     os.println("<h3>Servlet initialisation parameters</h3>");
  45.     Enumeration e=config.getInitParameterNames();
  46.     if (!e.hasMoreElements())
  47.       os.println("<b>None!</b>");
  48.     else while (e.hasMoreElements()) {
  49.       String name=(String) e.nextElement();
  50.       String value=config.getInitParameter(name);
  51.       pp(os, name, value);}
  52.     os.println("<hr>");
  53.     
  54.     os.println("<h3>Request parameters</h3>");
  55.     pp(os, "Request method", req.getMethod());
  56.       pp(os, "Request URI", req.getRequestURI());
  57.       pp(os, "Request protocol", req.getProtocol());
  58.     pp(os, "Servlet path", req.getServletPath());
  59.       pp(os, "Path info", req.getPathInfo());
  60.       pp(os, "Path translated", req.getPathTranslated());
  61.       pp(os, "Query string", req.getQueryString());
  62.       pp(os, "Content length", req.getContentLength());
  63.       pp(os, "Content type", req.getContentType());
  64.       pp(os, "Server name", req.getServerName());
  65.       pp(os, "Server port", req.getServerPort());
  66.       pp(os, "Remote user", req.getRemoteUser());
  67.     pp(os, "Remote address", req.getRemoteAddr());
  68.       pp(os, "Remote host", req.getRemoteHost());
  69.       pp(os, "Authorization scheme", req.getAuthType());
  70.     os.println("<hr>");
  71.     
  72.     os.println("<h3>Request headers</h3>");
  73.     e=req.getHeaderNames();
  74.     if (!e.hasMoreElements())
  75.       os.println("<b>None!</b>");
  76.     else while (e.hasMoreElements()) {
  77.       String name=(String) e.nextElement();
  78.       String value=(String) req.getHeader(name);
  79.       pp(os, name, value);}
  80.     os.println("<hr>");
  81.     
  82.     os.println("<h3>Servlet parameters</h3>");
  83.     e=req.getParameterNames();
  84.     if (!e.hasMoreElements())
  85.       os.println("<b>None!</b>");
  86.     else while (e.hasMoreElements()) {
  87.       String name=(String) e.nextElement();
  88.       String value=req.getParameter(name);
  89.       StringBuffer tbuffer=new StringBuffer();
  90.       pp(os, name, value);}
  91.     os.println("<hr>");
  92.     
  93.     os.println("<h3>Other servlets (by name)</h3>");
  94.     ServletContext tcontext=config.getServletContext();
  95.     e=tcontext.getServletNames();
  96.     if (!e.hasMoreElements())
  97.       os.println("<b>None!</b>");
  98.     else while (e.hasMoreElements()) {
  99.       os.println((String) e.nextElement()+"<br>");}
  100.     os.println("<hr>");
  101.     
  102.     os.println("<h3>Other servlets</h3>");
  103.     e=tcontext.getServlets();
  104.     if (!e.hasMoreElements())
  105.       os.println("<b>None!</b>");
  106.     else while (e.hasMoreElements()) {
  107.       Servlet tservlet=(Servlet) e.nextElement();
  108.       os.println(tservlet.getServletInfo()+"<br>");}
  109.     os.println("<hr>");
  110.  
  111.     os.println("<h3>Cookies</h3>");
  112.     Cookie[] cookies =req.getCookies();
  113.     for (int i = 0; i < cookies.length; i++)
  114.     {
  115.       os.println("<b>" + cookies[i].getName() + "</b> ");
  116.       os.println("<i>" + cookies[i].getValue() + "</i><BR>");
  117.     }
  118.     os.println("<hr>");
  119.     
  120.     os.println("<p><i>Info</i> version 1.8. <i>Info</i> and <a href=http://www/vqsoft.com/vq/server/index.html><i>vq</i>Server</a> are copyright © 1997-99 <i>vq</i>Soft and Steve Shering.");
  121.     os.println("</td>");    
  122.     os.println("<td width=20></td>");
  123.     
  124.     os.println("<p><i>Info</i> version 1.8. <i>Info</i> and <a href=http://www/vqsoft.com/vq/server/index.html><i>vq</i>Server</a> are copyright © 1997-99 <i>vq</i>Soft and Steve Shering.");
  125.     os.println("</td>");    
  126.     os.println("<td width=20></td>");
  127.     os.println("<td valign=top width=150>");
  128.     os.println("<a href=/index.html><img src=/vq/server/icons/utab.gif border=0 height=15 width=15>Home page</A>");
  129.     os.println("</td>");
  130.     os.println("</table>");
  131.     os.println("</body></html>");
  132.     os.flush();}
  133.  
  134.   public void doGet(HttpServletRequest req, HttpServletResponse rep) throws ServletException, IOException {
  135.     dostuff(req, rep);}
  136.  
  137.   public void doPost(HttpServletRequest req, HttpServletResponse rep) throws ServletException, IOException {
  138.     dostuff(req, rep);}}
  139.  
  140.