【发布时间】:2011-06-21 08:02:51
【问题描述】:
我正在发送一封电子邮件并且我正确地收到了它,但主题的编码不正确。我正在发送“invitación”,但收到的是“invitaci?n”。消息内容OK。
消息的内容来自速度模板的转换,而主题设置在字符串变量中。
我搜索了一下,发现有人说 MimeUtility.encodeText() 可以解决问题,但我没有成功。
我该如何解决这个问题?这是我目前的代码。
String subject = "Invitación";
String msgBody = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine, "/vmTemplates/template.vm", "UTF-8", model);
Properties props = new Properties();
Session session = Session.getDefaultInstance(props, null);
try {
String encodingOptions = "text/html; charset=UTF-8";
Message msg = new MimeMessage(session);
msg.setHeader("Content-Type", encodingOptions);
msg.setFrom(new javax.mail.internet.InternetAddress(emailFrom));
msg.addRecipient(Message.RecipientType.TO, new InternetAddress(emailTo));
msg.setSubject(subject);
msg.setContent(msgBody, encodingOptions);
Transport.send(msg);
} catch (AddressException e) {
...
} catch (MessagingException e) {
...
}
谢谢
【问题讨论】:
标签: java google-app-engine encoding jakarta-mail velocity