Browse Source

[Bug] [ALERT-9487] change email attachment filename to add random string to avoid issues (#9498)

* change email attachment filename to add random string to avoid always use same file

* change email attachment filename to add random string to avoid always use same file
3.0.0/version-upgrade
Tq 2 years ago committed by GitHub
parent
commit
51d47de6de
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 7
      dolphinscheduler-alert/dolphinscheduler-alert-plugins/dolphinscheduler-alert-email/src/main/java/org/apache/dolphinscheduler/plugin/alert/email/MailSender.java

7
dolphinscheduler-alert/dolphinscheduler-alert-plugins/dolphinscheduler-alert-email/src/main/java/org/apache/dolphinscheduler/plugin/alert/email/MailSender.java

@ -38,6 +38,7 @@ import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Properties; import java.util.Properties;
import java.util.UUID;
import javax.activation.CommandMap; import javax.activation.CommandMap;
import javax.activation.MailcapCommandMap; import javax.activation.MailcapCommandMap;
@ -326,13 +327,15 @@ public final class MailSender {
part1.setContent(partContent, EmailConstants.TEXT_HTML_CHARSET_UTF_8); part1.setContent(partContent, EmailConstants.TEXT_HTML_CHARSET_UTF_8);
// set attach file // set attach file
MimeBodyPart part2 = new MimeBodyPart(); MimeBodyPart part2 = new MimeBodyPart();
File file = new File(xlsFilePath + EmailConstants.SINGLE_SLASH + title + EmailConstants.EXCEL_SUFFIX_XLSX); // add random uuid to filename to avoid potential issue
String randomFilename = title + UUID.randomUUID();
File file = new File(xlsFilePath + EmailConstants.SINGLE_SLASH + randomFilename + EmailConstants.EXCEL_SUFFIX_XLSX);
if (!file.getParentFile().exists()) { if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs(); file.getParentFile().mkdirs();
} }
// make excel file // make excel file
ExcelUtils.genExcelFile(content, title, xlsFilePath); ExcelUtils.genExcelFile(content, randomFilename, xlsFilePath);
part2.attachFile(file); part2.attachFile(file);
part2.setFileName(MimeUtility.encodeText(title + EmailConstants.EXCEL_SUFFIX_XLSX, EmailConstants.UTF_8, "B")); part2.setFileName(MimeUtility.encodeText(title + EmailConstants.EXCEL_SUFFIX_XLSX, EmailConstants.UTF_8, "B"));

Loading…
Cancel
Save