email - 托米。发送带附件的邮件

标签 email tomcat jakarta-mail apache-tomee

我有一个在 Tomee 1.7.1 Web 配置文件上运行的 Web 应用程序

当我使用 apache 电子邮件库从代码发送一封简单的邮件时,收到的电子邮件没有附件。 在没有 Tomee 的情况下执行的相同代码工作正常。

代码如下:

HtmlEmail email = new HtmlEmail();
email.setHostName("localhost");
email.setSmtpPort(25);
email.setAuthenticator(new DefaultAuthenticator("test", "test"));
email.addTo("test@test.test");
email.setFrom("test@test.test");
email.setSubject("Test");
email.setContent("Html content", "text/html");
MimeMultipart mimeMultipart = new MimeMultipart();
BodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText("This is message body");
mimeMultipart.addBodyPart(messageBodyPart);
email.setContent(mimeMultipart);
EmailAttachment mailAttachment = new EmailAttachment();
mailAttachment.setName("Attachment");
mailAttachment.setDisposition(EmailAttachment.ATTACHMENT);
mailAttachment.setPath(pdfFile.getAbsolutePath());
email.attach(mailAttachment);
email.send();

使用资源给出相同的结果

@Resource(name = "mail/Test")
private Session mailSession;

MultiPartEmail 给出相同的结果,一封没有附件的电子邮件

最佳答案

修复了从项目依赖项中删除 apache 邮件实现, 并切换到 java 邮件 api

关于email - 托米。发送带附件的邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28319270/

相关文章:

python - 如何在Python中解析带有括号的电子邮件FROM header ?

email - 最不麻烦的电子邮件格式

javamail - 获取邮件正文内容格式错误

java - 为什么此 java 邮件以纯文本而不是 html 形式到达收件人?

java - Tomcat 8.5 gzip 压缩不起作用

Tomcat 8 更改 catalina.out 权限以供所有人读取

Tomcat 部署脚本返回 405

java - 解析 .p7m 文件时缺少附件

jakarta-mail - 文件名中的 JavaMail 和非 ASCII 字符

java - 我可以在 Java 应用程序中通过 POP3 和 OAuth2 访问 Gmail 邮件吗?