Buscar este blog

martes, 17 de mayo de 2016

Envio de email. javax.mail

    public static void enviarCorreo(List emailsDestinatarios,String pAsunto,String pMensaje) {
           try {
                   if (emailsDestinatarios.size()>0){
                   log.info("Creando el correo a enviar...");
                   InternetAddress from = new InternetAddress(mailConfig.getProperty(MAIL_SENDER));
                   from.setPersonal(mailConfig.getProperty(MAIL_ALIAS), "iso-8859-1");

                  
                   MimeMessage message = new MimeMessage(session);  
                   message.setFrom(from);   
                   message.addRecipients(Message.RecipientType.BCC, emailsDestinatarios.toArray(new InternetAddress[emailsDestinatarios.size()]));
                   message.setSubject(pAsunto);  
                   message.setSentDate(new Date());
                  
                   MimeBodyPart cuerpoEmail = new MimeBodyPart();
                   cuerpoEmail.setText(pMensaje, "us-ascii");
                   cuerpoEmail.setHeader("Content-Type", "text/html");
                   MimeMultipart contenido = new MimeMultipart();
                   contenido.addBodyPart(cuerpoEmail);
                   message.setContent(contenido);
                  
                   log.info("Correo a enviar creado.");
                   log.info("Enviando el correo...");
                   Transport.send(message);
                   log.info("Correo enviado.");
                }else
                    log.info("No hay destinatarios válidos.");             
           } catch (MessagingException me) {
               log.error("Se ha producido un error en el envío del correo.", me);
           } catch (UnsupportedEncodingException ue) {
               log.error("Se ha producido un error con el encoding del correo.", ue);
           }catch (Exception mex) {
                mex.printStackTrace();
                log.error("No se pudo enviar el correo." + mex.getMessage());
           }
       }

No hay comentarios: