Example usage for org.apache.commons.mail MultiPartEmail MultiPartEmail

List of usage examples for org.apache.commons.mail MultiPartEmail MultiPartEmail

Introduction

In this page you can find the example usage for org.apache.commons.mail MultiPartEmail MultiPartEmail.

Prototype

MultiPartEmail

Source Link

Usage

From source file:org.xerela.server.birt.ReportJob.java

/**
 * Email the report if the JobData defines the required parameters,
 * otherwise this method just returns without doing anything.
 *
 * @param intermediate the BIRT intermediate format file
 * @param executionContext the Quartz JobExecutionContext of this job
 *//*from   w  w w.j  a  va 2 s.  c o  m*/
@SuppressWarnings("nls")
private void emailReport(File intermediate, JobExecutionContext executionContext) {
    JobDataMap jobData = executionContext.getMergedJobDataMap();
    boolean emailAttachment = jobData.containsKey(REPORT_EMAIL_ATTACHMENT)
            ? jobData.getBooleanValue(REPORT_EMAIL_ATTACHMENT)
            : false;
    boolean emailLink = jobData.containsKey(REPORT_EMAIL_LINK) ? jobData.getBooleanValue(REPORT_EMAIL_LINK)
            : false;
    String emailTo = jobData.getString(REPORT_EMAIL_TO);
    String emailCc = jobData.getString(REPORT_EMAIL_CC);
    String reportFormat = jobData.getString(REPORT_EMAIL_FORMAT);

    if (!validateEmailProperties(emailAttachment, emailLink, emailTo, reportFormat)) {
        return;
    }

    try {
        Email email = null;
        if (reportFormat.equals("pdf")) {
            email = new MultiPartEmail();
        } else if (reportFormat.equals("html")) {
            email = new HtmlEmail();
        }

        setupEmail(executionContext, emailTo, emailCc, email);

        // Create the attachment
        if (emailAttachment) {
            final File render = RenderElf.render(intermediate, executionData.getId(), reportFormat);

            if (reportFormat.equals("pdf")) {
                EmailAttachment attachment = new EmailAttachment();
                attachment.setPath(render.getAbsolutePath());
                attachment.setDisposition(EmailAttachment.ATTACHMENT);
                attachment.setDescription(reportTitle);
                attachment.setName(String.format("%s.%s", reportTitle, reportFormat)); //$NON-NLS-1$
                ((MultiPartEmail) email).attach(attachment);
            } else if (reportFormat.equals("html")) {
                HtmlEmail htmlEmail = (HtmlEmail) email;
                String html = stringFromFile(render);

                final String pathStub = render.getName().replaceFirst("\\.[a-z]+$", ""); //$NON-NLS-1$ //$NON-NLS-2$
                File parentDir = new File(render.getParent());
                File[] listFiles = parentDir.listFiles(new FileFilter() {
                    public boolean accept(File pathname) {
                        return pathname.getName().startsWith(pathStub) && !pathname.getName().endsWith("html"); //$NON-NLS-1$
                    }
                });

                for (File image : listFiles) {
                    String cid = htmlEmail.embed(image);
                    String regex = "src=.+" + image.getName();
                    html = html.replaceAll(regex, "src=\"cid:" + cid);
                }

                htmlEmail.setHtmlMsg(html);
            }
        }

        if (emailLink) {
        }

        email.send();
    } catch (AddressException ae) {
        LOGGER.error(Messages.bind(Messages.ReportJob_badAddresses, reportTitle), ae);
    } catch (EmailException ee) {
        LOGGER.error(Messages.bind(Messages.ReportJob_errorSending, reportTitle), ee);
    } catch (EngineException ee) {
        LOGGER.error(Messages.bind(Messages.ReportJob_errorSending, reportTitle), ee);
    } catch (IOException ie) {
        LOGGER.error(Messages.bind(Messages.ReportJob_errorSending, reportTitle), ie);
    }
}

From source file:org.xmatthew.spy2servers.component.util.EMailUtils.java

/**
 * <p>//w  w  w  .  j av  a2s. c  o m
 * send Multi part mail with attachment
 * </p>
 *
 * @param mailBody
 * @throws EmailException email about exception
 */
public static void sendMultiPartEmail(MailBody mailBody) throws EmailException {
    MultiPartEmail email = new MultiPartEmail();
    email.setHostName(mailBody.getLoginServer());
    email.setAuthentication(mailBody.getLoginName(), mailBody.getLoginPassword());

    //receivers
    Map<String, String> receivers = mailBody.getReceivers();
    parseReceivers(email, receivers);
    //cc receivers
    receivers = mailBody.getCcReceivers();
    parseCCRecievers(email, receivers);
    //attatchments
    Map<String, EmailAttachment> attatchments = mailBody.getAttachments();
    parseAttatchments(email, attatchments);

    email.setFrom(mailBody.getSender(), mailBody.getSender_nick());
    email.setSubject(mailBody.getSubject());
    email.setMsg(mailBody.getBody());
    email.send();
}

From source file:projetohorus.EnvioEmail.java

public void EnvioEmail() throws EmailException {
    EmailAttachment anexo1 = new EmailAttachment();
    anexo1.setPath("tesfinal11.pdf"); //caminho do arquivo (RAIZ_PROJETO/teste/teste.txt)
    anexo1.setDisposition(EmailAttachment.ATTACHMENT);
    anexo1.setDescription("PDF");
    anexo1.setName("ProjetoHorus.pdf");

    MultiPartEmail emails = new MultiPartEmail();
    emails.setHostName("smtp.gmail.com"); // o servidor SMTP para envio do e-mail
    emails.addTo("", "Anderson"); //destinatrio
    emails.setFrom("projecthorusifrn@gmail.com", "Projeto");
    emails.setSubject("Teste -> Email com anexo");
    emails.setMsg("conteudo");
    emails.setAuthentication("email", "senha");
    emails.setSmtpPort(465);//from   w  ww  .j ava 2  s. com
    emails.setSSL(true);
    emails.setTLS(true);
    emails.attach(anexo1);
    emails.send();

}

From source file:SendAnEmail.SendAnEmail.java

public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);

    System.out.print("Enter your E-mail: ");
    String loginEmail = sc.nextLine();

    System.out.print("Enter your password: ");
    String password = sc.nextLine();

    System.out.print("Enter receiver E-mail: ");
    String receiverEmail = sc.nextLine();

    EmailAttachment attachment = new EmailAttachment();
    attachment.setPath("/root/TestingFiles/pic.gif");
    attachment.setDisposition(EmailAttachment.ATTACHMENT);
    attachment.setDescription("Picture of a horse.");
    attachment.setName("Horse");

    MultiPartEmail email = new MultiPartEmail();
    email.setHostName("smtp.googlemail.com");
    email.setSmtpPort(465);/*from w  ww  .  ja va 2  s .c  o m*/
    email.setAuthenticator(new DefaultAuthenticator(loginEmail, password));
    email.setSSLOnConnect(true);
    try {

        email.setFrom(loginEmail);
        email.setSubject("Horse Picture Email");
        email.setMsg("This contains a pic of a horse");
        email.addTo(receiverEmail);
        email.attach(attachment);
        System.out.println("Sending ...");
        email.send();
        System.out.println("Email sent!");
    } catch (Exception e) {
        System.out.println("Email not sent");
        e.printStackTrace();
    }

}

From source file:servlets.mailPDF.java

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    try {//from  w w  w  .  j  a v  a 2  s.co  m
        System.out.println("Reached @ mailPDF_Bronze.");

        String pdfBase64 = request.getParameter("pdfBase64");
        String reportdate = request.getParameter("reportdate");
        String emailaddresses = request.getParameter("emailList");
        String emailMessage = request.getParameter("emailMessage");
        String filename = request.getParameter("filename");

        List<String> emailList = Arrays.asList(emailaddresses.split("\\s*,\\s*"));

        System.out.println("pdfBase54 is --------------\n" + pdfBase64 + "\n-----------------End");
        System.out.println(reportdate);
        System.out.println(emailaddresses);

        byte[] decodedBytes = decode(pdfBase64.substring(28));
        MultiPartEmail email = new MultiPartEmail();
        email.setSmtpPort(587);
        email.setDebug(false);
        email.setHostName("smtp.gmail.com");
        email.setAuthentication("reporting@groupnp.com", "D3sign2015");
        email.setTLS(true);

        for (String emailAddress : emailList) {

            email.addTo(emailAddress);
        }
        if (filename.equals("LNIndia Tracker (Gold - Weekly)")) {

            email.setFrom("reporting@groupnp.com");
            email.setSubject(filename + " (" + reportdate + ")");

            MimeMultipart part1 = new MimeMultipart();
            BodyPart messageBodyPart1 = new MimeBodyPart();
            messageBodyPart1.setContent(emailMessage, "text/html; charset=utf-8");
            part1.addBodyPart(messageBodyPart1);
            email.addPart(part1);

            MimeMultipart part2 = new MimeMultipart();
            BodyPart messageBodyPart2 = new MimeBodyPart();
            messageBodyPart2
                    .setDataHandler(new DataHandler(new ByteArrayDataSource(decodedBytes, "application/pdf")));
            messageBodyPart2.removeHeader("Content-Transfer-Encoding");
            messageBodyPart2.addHeader("Content-Transfer-Encoding", "base64");
            messageBodyPart2.setFileName(filename + " " + reportdate + ".pdf");
            part2.addBodyPart(messageBodyPart2);
            email.addPart(part2);

            email.send();

        } else if (filename.equals("LNIndia Tracker (Gold - Monthly)")) {

            email.setFrom("reporting@groupnp.com");
            email.setSubject(filename + " (" + reportdate + ")");

            MimeMultipart part1 = new MimeMultipart();
            BodyPart messageBodyPart1 = new MimeBodyPart();
            messageBodyPart1.setContent(emailMessage, "text/html; charset=utf-8");
            part1.addBodyPart(messageBodyPart1);
            email.addPart(part1);

            MimeMultipart part2 = new MimeMultipart();
            BodyPart messageBodyPart2 = new MimeBodyPart();
            messageBodyPart2
                    .setDataHandler(new DataHandler(new ByteArrayDataSource(decodedBytes, "application/pdf")));
            messageBodyPart2.removeHeader("Content-Transfer-Encoding");
            messageBodyPart2.addHeader("Content-Transfer-Encoding", "base64");
            messageBodyPart2.setFileName(filename + " " + reportdate + ".pdf");
            part2.addBodyPart(messageBodyPart2);
            email.addPart(part2);

            email.send();

        }

    } catch (EmailException | MessagingException ex) {
        Logger.getLogger(mailPDF.class.getName()).log(Level.SEVERE, null, ex);
    }

}

From source file:servlets.mailPDF_Bronze.java

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    try {//ww  w .j a v  a  2 s. co m
        System.out.println("Reached @ mailPDF_Bronze.");

        String pdfBase64 = request.getParameter("pdfBase64");
        String reportdate = request.getParameter("reportdate");
        String emailaddresses = request.getParameter("emailList");
        String emailMessage = request.getParameter("emailMessage");

        List<String> emailList = Arrays.asList(emailaddresses.split("\\s*,\\s*"));

        System.out.println("pdfBase54 is --------------\n" + pdfBase64 + "\n-----------------End");
        System.out.println(reportdate);
        System.out.println(emailaddresses);

        byte[] decodedBytes = decode(pdfBase64.substring(28));
        MultiPartEmail email = new MultiPartEmail();
        email.setSmtpPort(587);
        email.setDebug(false);
        email.setHostName("smtp.gmail.com");
        email.setAuthentication("reporting@groupnp.com", "D3sign2015");
        email.setTLS(true);

        for (String emailAddress : emailList) {

            email.addTo(emailAddress);
        }

        email.setFrom("reporting@groupnp.com");
        email.setSubject("LexisNexis Risk India Tracker (" + reportdate + ")");

        MimeMultipart part1 = new MimeMultipart();
        BodyPart messageBodyPart1 = new MimeBodyPart();
        messageBodyPart1.setContent(emailMessage, "text/html; charset=utf-8");
        part1.addBodyPart(messageBodyPart1);
        email.addPart(part1);

        MimeMultipart part2 = new MimeMultipart();
        BodyPart messageBodyPart2 = new MimeBodyPart();
        messageBodyPart2
                .setDataHandler(new DataHandler(new ByteArrayDataSource(decodedBytes, "application/pdf")));
        messageBodyPart2.removeHeader("Content-Transfer-Encoding");
        messageBodyPart2.addHeader("Content-Transfer-Encoding", "base64");
        messageBodyPart2.setFileName("LNIndiaTracker_" + reportdate + ".pdf");
        part2.addBodyPart(messageBodyPart2);
        email.addPart(part2);

        email.send();

    } catch (EmailException | MessagingException ex) {
        Logger.getLogger(mailPDF_Bronze.class.getName()).log(Level.SEVERE, null, ex);
    }

}

From source file:servlets.mailPDF_Bronze_ACS.java

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    try {//from www.  ja v a2s  . c  o m
        System.out.println("Reached @ mailPDF_Bronze.");

        String pdfBase64 = request.getParameter("pdfBase64");
        String reportdate = request.getParameter("reportdate");
        String emailaddresses = request.getParameter("emailList");
        String emailMessage = request.getParameter("emailMessage");

        List<String> emailList = Arrays.asList(emailaddresses.split("\\s*,\\s*"));

        System.out.println("pdfBase54 is --------------\n" + pdfBase64 + "\n-----------------End");
        System.out.println(reportdate);
        System.out.println(emailaddresses);

        byte[] decodedBytes = decode(pdfBase64.substring(28));
        MultiPartEmail email = new MultiPartEmail();
        email.setSmtpPort(587);
        email.setDebug(false);
        email.setHostName("smtp.gmail.com");
        email.setAuthentication("reporting@groupnp.com", "D3sign2015");
        email.setTLS(true);

        for (String emailAddress : emailList) {

            email.addTo(emailAddress);
        }

        email.setFrom("reporting@groupnp.com");
        email.setSubject("ACS Tracker (" + reportdate + ")");

        MimeMultipart part1 = new MimeMultipart();
        BodyPart messageBodyPart1 = new MimeBodyPart();
        messageBodyPart1.setContent(emailMessage, "text/html; charset=utf-8");
        part1.addBodyPart(messageBodyPart1);
        email.addPart(part1);

        MimeMultipart part2 = new MimeMultipart();
        BodyPart messageBodyPart2 = new MimeBodyPart();
        messageBodyPart2
                .setDataHandler(new DataHandler(new ByteArrayDataSource(decodedBytes, "application/pdf")));
        messageBodyPart2.removeHeader("Content-Transfer-Encoding");
        messageBodyPart2.addHeader("Content-Transfer-Encoding", "base64");
        messageBodyPart2.setFileName("ACSTracker_" + reportdate + ".pdf");
        part2.addBodyPart(messageBodyPart2);
        email.addPart(part2);

        email.send();

    } catch (EmailException | MessagingException ex) {
        Logger.getLogger(mailPDF_Bronze_ACS.class.getName()).log(Level.SEVERE, null, ex);
    }

}

From source file:servlets.mailPDF_Bronze_Temenos.java

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    try {// w w w .jav  a2s .  com
        System.out.println("Reached @ mailPDF_Bronze.");

        String pdfBase64 = request.getParameter("pdfBase64");
        String reportdate = request.getParameter("reportdate");
        String emailaddresses = request.getParameter("emailList");
        String emailMessage = request.getParameter("emailMessage");

        List<String> emailList = Arrays.asList(emailaddresses.split("\\s*,\\s*"));

        System.out.println("pdfBase54 is --------------\n" + pdfBase64 + "\n-----------------End");
        System.out.println(reportdate);
        System.out.println(emailaddresses);

        byte[] decodedBytes = decode(pdfBase64.substring(28));
        MultiPartEmail email = new MultiPartEmail();
        email.setSmtpPort(587);
        email.setDebug(false);
        email.setHostName("smtp.gmail.com");
        email.setAuthentication("reporting@groupnp.com", "D3sign2015");
        email.setTLS(true);

        for (String emailAddress : emailList) {

            email.addTo(emailAddress);
        }

        email.setFrom("reporting@groupnp.com");
        email.setSubject("Temenos Tracker (" + reportdate + ")");

        MimeMultipart part1 = new MimeMultipart();
        BodyPart messageBodyPart1 = new MimeBodyPart();
        messageBodyPart1.setContent(emailMessage, "text/html; charset=utf-8");
        part1.addBodyPart(messageBodyPart1);
        email.addPart(part1);

        MimeMultipart part2 = new MimeMultipart();
        BodyPart messageBodyPart2 = new MimeBodyPart();
        messageBodyPart2
                .setDataHandler(new DataHandler(new ByteArrayDataSource(decodedBytes, "application/pdf")));
        messageBodyPart2.removeHeader("Content-Transfer-Encoding");
        messageBodyPart2.addHeader("Content-Transfer-Encoding", "base64");
        messageBodyPart2.setFileName("TemenosTracker_" + reportdate + ".pdf");
        part2.addBodyPart(messageBodyPart2);
        email.addPart(part2);

        email.send();

    } catch (EmailException | MessagingException ex) {
        Logger.getLogger(mailPDF_Bronze_Temenos.class.getName()).log(Level.SEVERE, null, ex);
    }

}

From source file:servlets.mailPDF_Bronze_Yougov.java

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    try {//from   ww  w  . ja va2s . com
        System.out.println("Reached @ mailPDF_Bronze_Yougov.");

        String pdfBase64 = request.getParameter("pdfBase64");
        String reportdate = request.getParameter("reportdate");
        String emailaddresses = request.getParameter("emailList");
        String emailMessage = request.getParameter("emailMessage");

        List<String> emailList = Arrays.asList(emailaddresses.split("\\s*,\\s*"));

        System.out.println("pdfBase54 is --------------\n" + pdfBase64 + "\n-----------------End");
        System.out.println(reportdate);
        System.out.println(emailaddresses);

        byte[] decodedBytes = decode(pdfBase64.substring(28));
        MultiPartEmail email = new MultiPartEmail();
        email.setSmtpPort(587);
        email.setDebug(false);
        email.setHostName("smtp.gmail.com");
        email.setAuthentication("reporting@groupnp.com", "D3sign2015");
        email.setTLS(true);

        for (String emailAddress : emailList) {

            email.addTo(emailAddress);
        }

        email.setFrom("reporting@groupnp.com");
        email.setSubject("Yougov Tracker (" + reportdate + ")");

        MimeMultipart part1 = new MimeMultipart();
        BodyPart messageBodyPart1 = new MimeBodyPart();
        messageBodyPart1.setContent(emailMessage, "text/html; charset=utf-8");
        part1.addBodyPart(messageBodyPart1);
        email.addPart(part1);

        MimeMultipart part2 = new MimeMultipart();
        BodyPart messageBodyPart2 = new MimeBodyPart();
        messageBodyPart2
                .setDataHandler(new DataHandler(new ByteArrayDataSource(decodedBytes, "application/pdf")));
        messageBodyPart2.removeHeader("Content-Transfer-Encoding");
        messageBodyPart2.addHeader("Content-Transfer-Encoding", "base64");
        messageBodyPart2.setFileName("YougovTracker_" + reportdate + ".pdf");
        part2.addBodyPart(messageBodyPart2);
        email.addPart(part2);

        email.send();

    } catch (EmailException | MessagingException ex) {
        Logger.getLogger(mailPDF_Bronze_Yougov.class.getName()).log(Level.SEVERE, null, ex);
    }

}

From source file:servlets.mailPDF_Demo.java

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    try {//from w w w. jav  a2 s .  c  o  m
        System.out.println("Reached @ mailPDF_Demo.");

        String pdfBase64 = request.getParameter("pdfBase64");
        String reportdate = request.getParameter("reportdate");
        String emailaddresses = request.getParameter("emailList");
        String emailMessage = request.getParameter("emailMessage");

        List<String> emailList = Arrays.asList(emailaddresses.split("\\s*,\\s*"));

        System.out.println("pdfBase54 is --------------\n" + pdfBase64 + "\n-----------------End");
        System.out.println(reportdate);
        System.out.println(emailaddresses);

        byte[] decodedBytes = decode(pdfBase64.substring(28));
        MultiPartEmail email = new MultiPartEmail();
        email.setSmtpPort(587);
        email.setDebug(false);
        email.setHostName("smtp.gmail.com");
        email.setAuthentication("reporting@groupnp.com", "D3sign2015");
        email.setTLS(true);

        for (String emailAddress : emailList) {

            email.addTo(emailAddress);
        }

        email.setFrom("reporting@groupnp.com");
        email.setSubject("Yougov Tracker (" + reportdate + ")");

        MimeMultipart part1 = new MimeMultipart();
        BodyPart messageBodyPart1 = new MimeBodyPart();
        messageBodyPart1.setContent(emailMessage, "text/html; charset=utf-8");
        part1.addBodyPart(messageBodyPart1);
        email.addPart(part1);

        MimeMultipart part2 = new MimeMultipart();
        BodyPart messageBodyPart2 = new MimeBodyPart();
        messageBodyPart2
                .setDataHandler(new DataHandler(new ByteArrayDataSource(decodedBytes, "application/pdf")));
        messageBodyPart2.removeHeader("Content-Transfer-Encoding");
        messageBodyPart2.addHeader("Content-Transfer-Encoding", "base64");
        messageBodyPart2.setFileName("HCL_DemoTracker_" + reportdate + ".pdf");
        part2.addBodyPart(messageBodyPart2);
        email.addPart(part2);

        email.send();

    } catch (EmailException | MessagingException ex) {
        Logger.getLogger(mailPDF_Demo.class.getName()).log(Level.SEVERE, null, ex);
    }

}