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

  1. package sysadmin;
  2.  
  3. import java.io.*;
  4. import java.util.*;
  5. import javax.servlet.*;
  6. import javax.servlet.http.*;
  7.  
  8. public class ServletList extends HttpServlet
  9. {
  10.     public void init(ServletConfig config)
  11.         throws ServletException
  12.     {
  13.         super.init(config);
  14.     }
  15.  
  16.     public void service(HttpServletRequest req, HttpServletResponse res)
  17.         throws ServletException, IOException
  18.     {
  19.         // Only the Sambar System Administrator may run this servlet
  20.         String isAdmin = (String)req.getAttribute("isSambarAdmin");
  21.         if (isAdmin == null)
  22.             return;
  23.  
  24.         res.setContentType("text/html");
  25.         PrintWriter out = res.getWriter();
  26.         ServletContext context = getServletContext();
  27.         String host = req.getServerName();
  28.         Enumeration names = context.getServletNames();
  29.         while(names.hasMoreElements())
  30.         {
  31.             String name = (String)names.nextElement();
  32.             Servlet servlet = context.getServlet(name);
  33.             out.println("Servlet Name: <a href=\"http://" + host + 
  34.                 "/servlet/sysadmin/ServletKiller?s=" + name + "\">" + 
  35.                 name + "</a><br>");
  36.             out.println("Servlet Class: " + servlet + "<br>");
  37.             out.println("Servlet Info: " + servlet.getServletInfo());
  38.             out.println("<hr size=0>");
  39.         }
  40.     }
  41.  
  42.     public String getServletInfo()
  43.     {
  44.         return "Lists all currently loaded servlets.";
  45.     }
  46.  
  47.     public void destroy()
  48.     {
  49.         super.destroy();
  50.     }
  51. }
  52.