home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1999 November / PCONLINE_11_99.ISO / filesbbs / OS2 / APCHSSL2.ZIP / OS2HTTPD / servlets / EchoServlet.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-02-10  |  2.3 KB  |  66 lines

  1. import java.io.IOException;
  2. import java.io.OutputStream;
  3. import java.util.Enumeration;
  4. import javax.servlet.ServletException;
  5. import javax.servlet.ServletInputStream;
  6. import javax.servlet.ServletOutputStream;
  7. import javax.servlet.http.HttpServlet;
  8. import javax.servlet.http.HttpServletRequest;
  9. import javax.servlet.http.HttpServletResponse;
  10.  
  11. public class EchoServlet extends HttpServlet {
  12.    public void doPost(HttpServletRequest var1, HttpServletResponse var2) throws ServletException, IOException {
  13.       short var3 = 8192;
  14.       if (var1.getContentLength() > 1048576) {
  15.          var2.setContentType("text/html");
  16.          ServletOutputStream var12 = var2.getOutputStream();
  17.          var12.println("<html><head><title>Too big</title></head>");
  18.          var12.println("<body><h1>Error - content length >8k not ");
  19.          var12.println("</h1></body></html>");
  20.       } else {
  21.          var2.setContentType("text/html");
  22.          ServletOutputStream var4 = var2.getOutputStream();
  23.          var4.println("<html>");
  24.          var4.println("<head><title>Echo Servlet</title></head>");
  25.          var4.println("<body>");
  26.          Enumeration var5 = var1.getHeaderNames();
  27.          if (var5.hasMoreElements()) {
  28.             var4.println("<h1>Request headers:</h1>");
  29.             var4.println("<pre>");
  30.  
  31.             while(var5.hasMoreElements()) {
  32.                String var6 = (String)var5.nextElement();
  33.                var4.println(" " + var6 + ": " + var1.getHeader(var6));
  34.             }
  35.  
  36.             var4.println("</pre>");
  37.          }
  38.  
  39.          ((OutputStream)var4).flush();
  40.          var4.println("<h1>Content: </h1>");
  41.          var4.println("<pre>");
  42.          ServletInputStream var13 = var1.getInputStream();
  43.          int var7 = var1.getContentLength();
  44.          byte[] var8 = new byte[var7];
  45.          int var10 = 0;
  46.  
  47.          try {
  48.             for(int var9 = var13.readLine(var8, 0, var8.length); var9 != -1; var9 = var13.readLine(var8, var10, var3)) {
  49.                var10 += var9;
  50.             }
  51.          } catch (IOException var11) {
  52.          }
  53.  
  54.          ((OutputStream)var4).write(var8, 0, var10);
  55.          ((OutputStream)var4).flush();
  56.          var4.println("</pre>");
  57.          var4.println("</body></html>");
  58.          ((OutputStream)var4).flush();
  59.       }
  60.    }
  61.  
  62.    public String getServletInfo() {
  63.       return "A servlet that shows the request headers and body sent by the client";
  64.    }
  65. }
  66.