包含西里尔字母的附件名称以gmail加密形式显示

时间:2019-02-08 12:12:45

标签: spring-boot java-8

在Spring Boot 1.5.15.RELEASE上开发了一个应用程序。使用了java-mail-api 1.5.6。

任务:在gmail上发送一封带有西里尔字母的附件的信

  

环境:dev:Windows 10 Pro,Payara Server 5.183,java 1.8.0_181   服务器:Ubuntu 16.04.4,Payara Server 5.183,java 1.8.0_171

发送消息代码

MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true);
...
messageHelper.addAttachment("тестовый_файл.pdf", templateProcessorService.processTemplate("template.docx", request, "pdf"));

问题: 在开发环境发送的一封信中,附件名称正确显示。 在服务器环境发送的一封信中,附件的名称显示为

  

= _ UTF-8_B_0J7RgtC60YDRi9GC0LjQtV_RgdGH0LXRgtCwX9C00LXQv9C Ln___ ___ filename_1 = __ BkZg == _ =

请告诉我,这可能是什么原因以及如何解决此问题。

1 个答案:

答案 0 :(得分:0)

尝试一下:

messageHelper.addAttachment(MimeUtility.encodeText("тестовый_файл.pdf", "CP1251", "B"), templateProcessorService.processTemplate("template.docx", request, "pdf")); 

对我有帮助

或此https://stackoverflow.com/a/49596504/8425969