UTF-8 subjects in javax.mail
Wednesday, November 8th, 2006 by DenisHI’ve been having problems with putting unicode strings into the subject of emails sent using javax.mail.
In the end, the solution was very simple and I found it here:
As long as you use “UTF-8″ and not “UTF8″ it all seems to work fine, so the code you need is:
Properties props = new Properties();
// put in your SMTP host in here
props.put("mail.smtp.host", "localhost");
Session s = Session.getInstance(props, null);
MimeMessage message = new MimeMessage(s);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject(subject, "UTF-8");
message.setText(body, "UTF-8");
message.setHeader("Content-Type", "text/plain; charset=UTF-8");
Transport.send(message);
Subscribe to news from Isocra