Sending email from JSP Print

  • 0

To send a Mail you can use a java.mail class. You need to add two jars into the WEB-INF/lib directory: mail.jar - contains the actual smtp implmentation and activation.jar - needed by mail.jar.
If you are using a private tomcat You need to upload them into your global lib directory or WEB-INF/lib application directory.

An example code how to use java.mail is provided below:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"                                                                        
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">                                      
<%@page import="java.util.Properties"%>                                                                                                     
<%@page import="javax.mail.Session"%>                                                                                                       
<%@page import="javax.mail.Authenticator"%>                                                                                                 
<%@page import="javax.mail.PasswordAuthentication"%>                                                                                        
<%@page import="javax.mail.Message"%>                                                                                                       
<%@page import="javax.mail.internet.MimeMessage"%>                                                                                          
<%@page import="javax.mail.internet.InternetAddress"%>                                                                                      
<%@page import="javax.mail.Transport"%>                                                                                                     
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">                                                                    
<title>Email Test</title>                                                                                                                   
String smtpServer = null;                                                                                                                   
String smtpPort = null;                                                                                                                     
final String authAddress = request.getParameter("auth_add");                                                                                
final String authPassword = request.getParameter("auth_pass");                                                                              
String subject = null;                                                                                                                      
String email = null;                                                                                                                        
String message = null;                                                                                                                      
String send = request.getParameter("send");                                                                                                 
String siteName=request.getServerName();                                                                                                    

        smtpServer = request.getParameter("smtp_server");
        smtpPort = request.getParameter("smtp_port");    
        subject = request.getParameter("subject");       
        email = request.getParameter("email");           
        message = request.getParameter("message");       
                Properties props = new Properties();     
                props.put("", smtpServer);
                props.put("mail.smtp.port", smtpPort);   
            props.put("mail.smtp.auth", "true");         
            // create some properties and get the default Session
            Session sessionMail = Session.getInstance(props, new Authenticator() {
                 public PasswordAuthentication getPasswordAuthentication() {     
                         return new PasswordAuthentication(authAddress, authPassword);

            // create a message
            Message msg = new MimeMessage(sessionMail);

            // set the from and to address
            InternetAddress addressFrom = new InternetAddress(authAddress);

            InternetAddress[] addressTo = new InternetAddress[1];
            addressTo[0] = new InternetAddress(email);
            msg.setRecipients(Message.RecipientType.TO, addressTo);

            // Optional : You can also set your custom headers in the Email if you Want
            msg.addHeader("site", siteName);

            // Setting the Subject and Content Type
            msg.setContent(message, "text/plain");
        }catch(Exception e){
<form name="emailForm" action="email-test.jsp" method="post">
        SMTP Server: <input type="text" name="smtp_server" value="mail.<%out.print(siteName);%>"><br>
        SMTP Port: <input type="text" name="smtp_port" value="2525"><br>
        Username: <input type="text" name="auth_add" value="[email protected]<%out.print(siteName);%>"><br>
        Password: <input type="password" name="auth_pass"><br>
        Subject: <input type="text" name="subject" value="Test SMTP Server."><br>
        Recipient: <input type="text" name="email" value=""><br>
        Message Body : <input type="text" name="message" value="Test"><br>
        <input type="submit" name="send" value="send">&nbsp;
        <input type="Reset" name="reset" value="reset"><br>


Was this answer helpful?

« Back