Galera… to tendo problemas aqui, mas estou utilizando somente a API Javamail mesmo, versão 1.3
O que acontece é o seguinte, já tentei com vários códigos que peguei na net por aí, mas meu e-mail nunca chega com anexo.
Na verdade o anexo chega no corpo em forma de texto, assim:
------=_Part_0_4875744.1272501496859
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Textando texto no meio
------=_Part_0_4875744.1272501496859
Content-Type: text/plain; name="C:\\arquivo_em_anexo.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="C:\\arquivo_em_anexo.txt"
conteudo do arquivo em anexo 123
conteudo do arquivo em anexo 456
conteudo do arquivo em anexo 789
conteudo do arquivo em anexo 012
conteudo do arquivo em anexo 345
------=_Part_0_4875744.1272501496859--
O código java que estou utilizando é o seguinte:
Session session = Session.getInstance(p, null);
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("[email removido]"));
message.addRecipient(Message.RecipientType.TO, new InternetAddress("[email removido]"));
message.setSubject("Hello JavaMail Attachment");
BodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText("Textando texto no meio");
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource("C:\\arquivo_em_anexo.txt");
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName("C:\\arquivo_em_anexo.txt");
multipart.addBodyPart(messageBodyPart);
message.setContent(multipart);
Transport tr = session.getTransport("smtp");
tr.connect(host, fromAccount, password);
tr.sendMessage(message, message.getAllRecipients());
tr.close();
Detalhe: estou utilizando um exemplo da própria SUN… http://java.sun.com/developer/onlineTraining/JavaMail/contents.html#SendingAttachments
Já estou há dois dias vendo isso, sei lá, deve ser uma coisa pequena, mas já tentei com vários outros códigos e nada.
Alguém sabe o que pode estar acontecendo???
Valeu galera.