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 件のコメント :
コメントを投稿