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

  1. import java.io.IOException;
  2. import java.io.OutputStream;
  3. import java.io.PrintStream;
  4. import java.net.InetAddress;
  5. import javax.servlet.ServletOutputStream;
  6. import javax.servlet.http.HttpServlet;
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpServletResponse;
  9. import sun.net.smtp.SmtpClient;
  10.  
  11. public class MailServlet extends HttpServlet {
  12.    public void service(HttpServletRequest var1, HttpServletResponse var2) throws IOException {
  13.       ServletOutputStream var3 = var2.getOutputStream();
  14.       var2.setContentType("text/html");
  15.       this.preamble(var3, "Mail Servlet Output");
  16.       var3.println("<h1> Form Reply </h1>");
  17.       var3.println("<p>");
  18.       String var4 = var1.getParameter("name");
  19.       String var5 = var1.getParameter("e-mail");
  20.       boolean var6 = false;
  21.       PrintStream var7 = null;
  22.       SmtpClient var8 = null;
  23.       if (var4.length() > 0 && var5.length() > 0) {
  24.          try {
  25.             var8 = new SmtpClient("java.sun.com");
  26.             var8.from("bogusaddress@pleasefillin");
  27.             var8.to(var5);
  28.             var7 = var8.startMessage();
  29.             var6 = true;
  30.          } catch (Exception var12) {
  31.             ((Throwable)var12).printStackTrace();
  32.             var3.println("Couldn't reach you through javasoft, trying your localmachine instead.  You probably are behind a firewall.");
  33.          }
  34.  
  35.          if (!var6) {
  36.             try {
  37.                var8 = new SmtpClient(InetAddress.getLocalHost().getHostName());
  38.                var8.from(var5);
  39.                var8.to(var5);
  40.                var7 = var8.startMessage();
  41.             } catch (Exception var11) {
  42.                ((Throwable)var11).printStackTrace();
  43.                var3.println("There was an error sending you mail.");
  44.                this.postamble(var3);
  45.                return;
  46.             }
  47.          }
  48.  
  49.          try {
  50.             var7.println("From: " + var5);
  51.             var7.println("To: " + var5);
  52.             var7.println("Subject: Thanks for using JavaWebServer");
  53.             var7.print("\r\n");
  54.             var7.println("Hello " + var4 + ",");
  55.             var7.println();
  56.             var7.println("Thanks for looking at JavaWebServer.");
  57.             var7.println();
  58.             var7.println("- JavaWebServer Team.");
  59.             var7.println("(email was generated by MailServlet).");
  60.             var7.flush();
  61.             var7.close();
  62.             var8.closeServer();
  63.             var3.println("You will get an email thanking you for using the Java Web Server.");
  64.          } catch (Exception var10) {
  65.             ((Throwable)var10).printStackTrace();
  66.             var3.println("There was an error sending you mail.");
  67.             this.postamble(var3);
  68.             return;
  69.          }
  70.       } else {
  71.          var3.println("You need to enter both name and email address");
  72.       }
  73.  
  74.       this.postamble(var3);
  75.    }
  76.  
  77.    public String getServletInfo() {
  78.       return "This mail servlet sends email thanking for downloading.";
  79.    }
  80.  
  81.    private void preamble(ServletOutputStream var1, String var2) throws IOException {
  82.       var1.println("<HEAD><TITLE> " + var2 + "</TITLE></HEAD><BODY>");
  83.    }
  84.  
  85.    private void postamble(ServletOutputStream var1) throws IOException {
  86.       var1.println("</BODY>");
  87.       ((OutputStream)var1).flush();
  88.    }
  89. }
  90.