我使用 apache commons-mail (v1.3.2) 发送带有 PDF 作为附件的订单确认电子邮件。电子邮件在 Outlook(Web 和桌面)中显示没有问题,但是当我发送到我的 gmail 帐户时,邮件内容为空,并且 Html 内容附加在单独的文件“noname.html”中。
我的代码:
// Create mail instance using commons-mail and the hybris MailUtility class.
HtmlEmail htmlEmail = (HtmlEmail) MailUtils.getPreConfiguredEmail(); // creates a mail instance with set mail
htmlEmail.setCharset("UTF-8");
htmlEmail.setHtmlMsg("this is <b>html text</b>);
// Part two is attachment
DataSource ds = new ByteArrayDataSource(mailAttachment.getData(), "application/pdf");
htmlEmail.attach(ds, "attach.pdf", "generalconditions", EmailAttachment.ATTACHMENT);
}
//send mail
htmlEmail.send();
起初,这个问题也出现在 Outlook 中,但我通过从 commons-mail v1.1 切换到 v1.3.2 解决了这个问题。虽然仍然没有为gmail修复......