1

我正在使用 SpringJavaMailSender从我们的 Web 应用程序发送邮件。到目前为止,它运行良好,除了这种情况:我们的一位客户报告说他们的电子邮件客户端无法读取电子邮件中的字符,并显示:

此消息使用 Internet 服务不支持的字符集。要查看原始邮件内容,请打开附加邮件。如果文本显示不正确,请将附件保存到磁盘,然后使用可以显示原始字符集的查看器打开它。

奇怪的是只有一个人看到这个错误。其他人看到电子邮件就好了。有问题的用户正在使用 Hotmail。

我搜索了几个论坛,其中大多数是关于他们的电子邮件客户端的沮丧客户,但服务器端的解决方案/解决方法并不多。有人说这是因为中间的 SMTP 服务器不支持 Unicode,但我不认为是这种情况......

这是我的(简化的)代码:

MimeMessage mimeMessage = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
helper.setFrom(new InternetAddress("abc@abc.abc","Hoang Long"));
helper.setReplyTo("abc@abc.abc");
helper.setTo(student.getEmail());           
helper.setSubject(emailSubject);
helper.setCc(studioParameterService.getAllCCEmailAddress(studio.getId()));
helper.setSentDate(new Date());
helper.setText(emailContent, true);

for (String filePath : attachFileList) {
FileSystemResource attachFile = new FileSystemResource(filePath);
   helper.addAttachment(attachFile.getFilename(), attachFile);
}           
mailSender.send(helper.getMimeMessage());
4

0 回答 0