Email com anexo + imagem no corpo

1 resposta
M

Boa noite,

Estou enviando email com arquivo anexo usando MimeMessage sem problemas.
O problema está nas imagens que precisam aparecer no corpo do email.

Agora, quando uso o HtmlEmail somente, aparece a imagem do jeito que precisa ser.
O que não consigo é enviar juntando as duas funcionalidades de anexo e carregar imagens no corpo do email.

segue code do envio com anexo:

Properties props = System.getProperties();
      props.put("mail.smtp.host", "smtp");       
      
      Session session = Session.getInstance(props, null);
      
      MimeMessage message = new MimeMessage(session);
      message.setFrom(new InternetAddress("[email removido]"));       
      message.addRecipient(Message.RecipientType.TO, new InternetAddress(emailDestinatario));
      message.setSubject("teste");

      MimeBodyPart mimeBodyPart = new MimeBodyPart();
      mimeBodyPart.setText(textoEmail);
      
      Multipart multipart = new MimeMultipart();
      multipart.addBodyPart(mimeBodyPart);
      
      mimeBodyPart = new MimeBodyPart();

      mimeBodyPart.setDataHandler(new DataHandler(new ByteArrayDataSource(pdfStream.toByteArray(),"application/pdf")));
      mimeBodyPart.setFileName("relatorio.pdf");
      multipart.addBodyPart(mimeBodyPart);
      
      message.setContent(multipart);
      Transport.send(message);

E segue o code do email com imagens no corpo :

HtmlEmail email = new HtmlEmail();  
         email.setHostName("smtp");  
         email.setFrom("[email removido]", "meu nome");  
         email.setSubject("Teste de Imagem");  
         URL url = new URL("url da imagem");  
         String cid = email.embed(url, "cabecalho");  
         email.setHtmlMsg("<html><img src=\"cid:" + cid + "\"></html>");  
         email.addTo("[email removido]");  
         email.send();

Como resolvo ?

1 Resposta

M

Ninguem ?

Criado 22 de agosto de 2012
Ultima resposta 23 de ago. de 2012
Respostas 1
Participantes 1