Skip to content

Commit 6dba89e

Browse files
Merge pull request #842 from YennyQ/master
dss appconn sendemail bug fix.
2 parents 2911d68 + 2e603a4 commit 6dba89e

File tree

1 file changed

+8
-7
lines changed
  • dss-appconn/appconns/dss-sendemail-appconn/sendemail-appconn-core/src/main/java/com/webank/wedatasphere/dss/appconn/sendemail/email/sender

1 file changed

+8
-7
lines changed

dss-appconn/appconns/dss-sendemail-appconn/sendemail-appconn-core/src/main/java/com/webank/wedatasphere/dss/appconn/sendemail/email/sender/SpringJavaEmailSender.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.springframework.mail.javamail.JavaMailSenderImpl;
2828
import org.springframework.mail.javamail.MimeMessageHelper;
2929

30+
import java.util.Base64;
3031
import javax.mail.internet.MimeMessage;
3132
import javax.mail.util.ByteArrayDataSource;
3233
import java.util.Map;
@@ -45,10 +46,10 @@ public class SpringJavaEmailSender extends AbstractEmailSender {
4546
@Override
4647
public void init(Map<String, String> properties) {
4748
Properties prop = new Properties();
48-
prop.put("mail.smtp.auth", Boolean.parseBoolean(EMAIL_SMTP_AUTH().getValue(properties)));
49-
prop.put("mail.smtp.starttls.enable", Boolean.parseBoolean(EMAIL_SMTP_STARTTLS_ENABLE().getValue(properties)));
50-
prop.put("mail.smtp.starttls.required", Boolean.parseBoolean(EMAIL_SMTP_STARTTLS_REQUIRED().getValue(properties)));
51-
prop.put("mail.smtp.ssl.enable", Boolean.parseBoolean(EMAIL_SMTP_SSL_ENABLED().getValue(properties)));
49+
prop.put("mail.smtp.auth", EMAIL_SMTP_AUTH().getValue(properties));
50+
prop.put("mail.smtp.starttls.enable", EMAIL_SMTP_STARTTLS_ENABLE().getValue(properties));
51+
prop.put("mail.smtp.starttls.required", EMAIL_SMTP_STARTTLS_REQUIRED().getValue(properties));
52+
prop.put("mail.smtp.ssl.enable", EMAIL_SMTP_SSL_ENABLED().getValue(properties));
5253
prop.put("mail.smtp.timeout", EMAIL_SMTP_TIMEOUT().getValue(properties));
5354
javaMailSender.setJavaMailProperties(prop);
5455
BiConsumer<Consumer<String>, CommonVars<String>> setProp = (consumer, c) -> {
@@ -84,10 +85,10 @@ private MimeMessage parseToMimeMessage(Email email) {
8485
MimeMessage message = javaMailSender.createMimeMessage();
8586
try {
8687
MimeMessageHelper messageHelper = new MimeMessageHelper(message, true);
87-
if (StringUtils.isBlank(email.getFrom())) {
88+
if (StringUtils.isBlank(javaMailSender.getUsername())) {
8889
messageHelper.setFrom(DEFAULT_EMAIL_FROM().getValue());
8990
} else {
90-
messageHelper.setFrom(email.getFrom());
91+
messageHelper.setFrom(javaMailSender.getUsername());
9192
}
9293
messageHelper.setSubject(email.getSubject());
9394
messageHelper.setTo(email.getTo());
@@ -98,7 +99,7 @@ private MimeMessage parseToMimeMessage(Email email) {
9899
messageHelper.setBcc(email.getBcc());
99100
}
100101
for (Attachment attachment : email.getAttachments()) {
101-
messageHelper.addAttachment(attachment.getName(), new ByteArrayDataSource(attachment.getBase64Str(), attachment.getMediaType()));
102+
messageHelper.addAttachment(attachment.getName(), new ByteArrayDataSource(Base64.getMimeDecoder().decode(attachment.getBase64Str()), attachment.getMediaType()));
102103
}
103104
messageHelper.setText(email.getContent(), true);
104105
} catch (Exception e) {

0 commit comments

Comments
 (0)