Go4Expert

Go4Expert (http://www.go4expert.com/)
-   JSP (http://www.go4expert.com/forums/jsp/)
-   -   javamail api in jsp (http://www.go4expert.com/forums/javamail-api-jsp-t7982/)

greenhorn568 24Dec2007 02:04

javamail api in jsp
 
Can some one please tell me how to make my JSP's use JavaMail to send
emails.
1). Please edit the code in such a way that, it should receive parameter values from the user form (request.getParameter())
2). parameters to be received are To address, From address, emailsubject, emailText.



The below code successfully sends emails to the emailList. Can someone help me to edit this code for the above requirements.
Code:

import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import java.io.*;



public class SendMailUsingAuthentication
{

  private static final String SMTP_HOST_NAME = "smra.dataone.in";
  private static final String SMTP_AUTH_USER = "drarreddy49_hyd";
  private static final String SMTP_AUTH_PWD  = "enclave";

  private static final String emailMsgTxt      = "Online Order Confirmation Message. Also include the Tracking Number.";
  private static final String emailSubjectTxt  = "Order Confirmation Subject";
  private static final String emailFromAddress = "neha_admal@yahoo.co.in";

  // Add List of Email address to who email needs to be sent to
  private static final String[] emailList = {"neha_admal@yahoo.co.in", "sweta_nahata2000@yahoo.co.in"};

  public static void main(String args[]) throws Exception
  {
    SendMailUsingAuthentication smtpMailSender = new SendMailUsingAuthentication();
    smtpMailSender.postMail( emailList, emailSubjectTxt, emailMsgTxt, emailFromAddress);
    System.out.println("Sucessfully Sent mail to All Users");
  }

  public void postMail( String recipients[ ], String subject,
                            String message , String from) throws MessagingException
  {
    boolean debug = false;

    //Set the host smtp address
    Properties props = new Properties();
    props.put("mail.smtp.host", SMTP_HOST_NAME);
    props.put("mail.smtp.auth", "true");

    Authenticator auth = new SMTPAuthenticator();
    Session session = Session.getDefaultInstance(props, auth);

    session.setDebug(debug);

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

    // set the from and to address
    InternetAddress addressFrom = new InternetAddress(from);
    msg.setFrom(addressFrom);

    InternetAddress[] addressTo = new InternetAddress[recipients.length];
    for (int i = 0; i < recipients.length; i++)
    {
        addressTo[i] = new InternetAddress(recipients[i]);
    }
    msg.setRecipients(Message.RecipientType.TO, addressTo);


    // Setting the Subject and Content Type
    msg.setSubject(subject);
    msg.setContent(message, "text/plain");
    Transport.send(msg);
 }


/**
* SimpleAuthenticator is used to do simple authentication
* when the SMTP server requires it.
*/
private class SMTPAuthenticator extends javax.mail.Authenticator
{

    public PasswordAuthentication getPasswordAuthentication()
    {
        String username = SMTP_AUTH_USER;
        String password = SMTP_AUTH_PWD;
        return new PasswordAuthentication(username, password);
    }
}

}



All times are GMT +5.5. The time now is 00:03.