Play frameworkでメール送信
前記事でも述べたようにtypesafeのMailerAPIには不具合がある模様。
なので、MailerAPIが下で利用しているapache.commons.mailを利用してメール送信処理を自作してみた。
Build.scalaのappDependenciesに、
なので、MailerAPIが下で利用しているapache.commons.mailを利用してメール送信処理を自作してみた。
Build.scalaのappDependenciesに、
"org.apache.commons" % "commons-email" % "1.3.1"
という一行を追加して、コンパイル。
play compile
で、org.apache.commons.mail.*をimportすると、SimpleEmail, MultiPartEmail, HtmlEmail, ImageHtmlEmail, EmailAttachmentが利用できるようになる。
SimpleEmail mailer = new SimpleEmail();
try {
mailer.setCharset("UTF-8");
mailer.setHostName("your.mail.host.com");
mailer.setSmtpPort(587);
mailer.setSSL(false);
mailer.setAuthentication("youruser", "yourpass");
mailer.setFrom("xxx@yourmail.com");
mailer.setMsg("本文");
mailer.setSubject("テストメール");
mailer.addTo("to@mail.com");
mailer.send();
} catch(EmailException e) {
Logger.error(e.toString(), e);
}
例えばこんな感じで、メールが送信されるはず。
一応送信されたメールのcharsetを確認してみたが、こっちではきちんと指定通りのcharsetとなって送信されたのでOKでした。
コメント
0 件のコメント :
コメントを投稿