1 4 5 import java.io.IOException ; 6 import java.io.PrintWriter ; 7 import javax.mail.Message ; 8 import javax.mail.Session ; 9 import javax.mail.Transport ; 10 import javax.mail.internet.InternetAddress ; 11 import javax.mail.internet.MimeMessage ; 12 import javax.naming.Context ; 13 import javax.naming.InitialContext ; 14 import javax.servlet.RequestDispatcher ; 15 import javax.servlet.ServletException ; 16 import javax.servlet.http.HttpServlet ; 17 import javax.servlet.http.HttpServletRequest ; 18 import javax.servlet.http.HttpServletResponse ; 19 20 21 22 28 29 public class SendMailServlet extends HttpServlet { 30 31 public void doPost(HttpServletRequest request, 32 HttpServletResponse response) 33 throws IOException , ServletException  34 { 35 36 String from = request.getParameter("mailfrom"); 38 String to = request.getParameter("mailto"); 39 String subject = request.getParameter("mailsubject"); 40 String content = request.getParameter("mailcontent"); 41 if ((from == null) || (to == null) || 42 (subject == null) || (content == null)) { 43 RequestDispatcher rd = 44 getServletContext().getRequestDispatcher("/jsp/mail/sendmail.jsp"); 45 rd.forward(request, response); 46 return; 47 } 48 49 PrintWriter writer = response.getWriter(); 51 response.setContentType("text/html"); 52 writer.println("<html>"); 53 writer.println("<head>"); 54 writer.println("<title>Example Mail Sending Results</title>"); 55 writer.println("</head>"); 56 writer.println("<body bgcolor=\"white\">"); 57 58 try { 59 60 Context initCtx = new InitialContext (); 62 Context envCtx = (Context ) initCtx.lookup("java:comp/env"); 63 Session session = (Session ) envCtx.lookup("mail/Session"); 64 65 Message message = new MimeMessage (session); 67 message.setFrom(new InternetAddress (from)); 68 InternetAddress dests[] = new InternetAddress [] 69 { new InternetAddress (to) }; 70 message.setRecipients(Message.RecipientType.TO, dests); 71 message.setSubject(subject); 72 message.setContent(content, "text/plain"); 73 74 Transport.send(message); 76 77 writer.println("<strong>Message successfully sent!</strong>"); 79 80 } catch (Throwable t) { 81 82 writer.println("<font color=\"red\">"); 83 writer.println("ENCOUNTERED EXCEPTION: " + t); 84 writer.println("<pre>"); 85 t.printStackTrace(writer); 86 writer.println("</pre>"); 87 writer.println("</font>"); 88 89 } 90 91 writer.println("<br><br>"); 93 writer.println("<a HREF=\"jsp/mail/sendmail.jsp\">Create a new message</a><br>"); 94 writer.println("<a HREF=\"jsp/index.html\">Back to examples home</a><br>"); 95 writer.println("</body>"); 96 writer.println("</html>"); 97 98 } 99 100 } 101 | Popular Tags |