Rev 11178 | Rev 11215 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package in.shop2020.utils;import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.util.Date;import java.util.Properties;import javax.activation.DataHandler;import javax.activation.DataSource;import javax.activation.FileDataSource;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.Multipart;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeBodyPart;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeMultipart;public class EmailUtils {public static void main(String... args) throws IOException{System.out.println("Test Email Start");String[] sendTo = { "vikram.raghav@shop2020.in"};EmailUtils.sendEmail(sendTo,"------DONT PANIC--------TEST EMAIL--------","MAIL Body","build@shop2020.in","/home/Mobiles-Tablets-FBA-Sale.xls","/home/Mobiles-Tablets-FBA-body.html");System.out.println("Test Email Sent");}/*** Utility method to send simple HTML email* @param session* @param toEmail* @param subject* @param body*/public static void sendEmail(String[] toEmail, String subject, String body,String fromEmail,String filename,String htmlFileName){try{BufferedReader bufferedReader = new BufferedReader(new FileReader(htmlFileName));StringBuffer htmlContent = new StringBuffer();String line = null;while((line =bufferedReader.readLine())!=null){htmlContent.append(line).append("\n");}Multipart multipart = new MimeMultipart();MimeBodyPart htmlPart = new MimeBodyPart();htmlPart.setContent(htmlContent.toString(), "text/html; charset=utf-8");multipart.addBodyPart(htmlPart);Properties props = System.getProperties();String smtpHostServer = "localhost";props.put("mail.smtp.host", smtpHostServer);Session session = Session.getInstance(props, null);MimeMessage msg = new MimeMessage(session);//set message headersmsg.addHeader("Content-type", "text/HTML; charset=UTF-8");msg.addHeader("format", "flowed");msg.addHeader("Content-Transfer-Encoding", "8bit");msg.setFrom(new InternetAddress(fromEmail, ""));msg.setSubject(subject, "UTF-8");msg.setText(body, "UTF-8");// create the message partMimeBodyPart messageBodyPart = new MimeBodyPart();//Part 1: Text messagemessageBodyPart.setText(body);multipart.addBodyPart(messageBodyPart);//Part 2: AttachmentmessageBodyPart = new MimeBodyPart();DataSource source = new FileDataSource(filename);messageBodyPart.setDataHandler(new DataHandler(source));String[] names = filename.split("/");messageBodyPart.setFileName(names[names.length - 1]);multipart.addBodyPart(messageBodyPart);msg.setSentDate(new Date());for(String email:toEmail){msg.addRecipient(Message.RecipientType.TO,InternetAddress.parse(email)[0]);}System.out.println("Message is ready");Transport.send(msg);System.out.println("EMail Sent Successfully!!");}catch (Exception e) {e.printStackTrace();}}}