added missing encoding to subject

This commit is contained in:
jomu
2017-09-14 23:37:40 +00:00
parent 8885014bf7
commit 54598cbce0
2 changed files with 9 additions and 5 deletions

View File

@ -79,12 +79,16 @@ public class MailService implements Serializable {
} }
public String sendHTMLMail(String recipient, String subject, MailDatamodel dataModel, String htmlTemplateName, String plainTemplateName) throws MailException { public String sendHTMLMail(String recipient, String subject, MailDatamodel dataModel, String htmlTemplateName, String plainTemplateName) throws MailException {
return sendHTMLMail(recipient, null, null, subject, dataModel, htmlTemplateName, plainTemplateName); return sendHTMLMail(recipient, null, null, subject, dataModel, htmlTemplateName, plainTemplateName, "UTF-8");
}
public String sendHTMLMail(String recipient, String ccRecipient, String bccRecipient, String subject, MailDatamodel dataModel, String htmlTemplateName, String plainTemplateName) throws MailException {
return sendHTMLMail(recipient, ccRecipient, bccRecipient, subject, dataModel, htmlTemplateName, plainTemplateName, "UTF-8");
} }
public String sendHTMLMail(String recipient, String ccRecipient, String bccRecipient, String subject, MailDatamodel dataModel, String htmlTemplateName, String plainTemplateName) throws MailException { public String sendHTMLMail(String recipient, String ccRecipient, String bccRecipient, String subject, MailDatamodel dataModel, String htmlTemplateName, String plainTemplateName, String encoding) throws MailException {
try { try {
Message message = new MimeMessage(mailSession); MimeMessage message = new MimeMessage(mailSession);
message.setFrom(); // use default from message.setFrom(); // use default from
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(recipient, false)); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(recipient, false));
if (ccRecipient != null) { if (ccRecipient != null) {
@ -94,7 +98,7 @@ public class MailService implements Serializable {
message.setRecipients(Message.RecipientType.BCC, InternetAddress.parse(bccRecipient, false)); message.setRecipients(Message.RecipientType.BCC, InternetAddress.parse(bccRecipient, false));
} }
message.setSubject(subject); message.setSubject(subject, encoding);
String htmlBody = mailTemplateService.getStringFromTemplate(htmlTemplateName, dataModel); String htmlBody = mailTemplateService.getStringFromTemplate(htmlTemplateName, dataModel);

View File

@ -40,7 +40,7 @@ public class MailTemplateService implements Serializable {
} }
Configuration configuration = new Configuration(Configuration.VERSION_2_3_23); Configuration configuration = new Configuration(Configuration.VERSION_2_3_23);
configuration.setDefaultEncoding("UTF-8"); configuration.setDefaultEncoding("UTF-8"); // FIXME make encoding configurable
configuration.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER); configuration.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER);
StringTemplateLoader stringLoader = new StringTemplateLoader(); StringTemplateLoader stringLoader = new StringTemplateLoader();