GAE/Jでメール送信
GAE/Jにはメール管理機能もあるのでそれを実験してみました。今回試したのはメールの送信です。GWTはよく分からないので、低レベルAPIのみ使っています。このサーブレットを実行するだけで指定したアドレスへメールを送信することが出来ます。送信元のメールアドレスはGAEに登録してあるもの以外だとダメっぽいので注意して下さい。以下に参考にしたサイトと、今回試したソースコードを記します。
- 参考にしたサイト
import java.io.IOException; import javax.servlet.http.*; import java.util.Properties; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; @SuppressWarnings("serial") public class SendMailServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { resp.setContentType("text/plain"); resp.getWriter().println("Hello, world"); InternetAddress ToAddress = new InternetAddress("送信先のメールアドレス", "送信相手の名前", "ISO-2022-JP"); // 送信相手 InternetAddress FromAddress = new InternetAddress("送信元のメールアドレス", "送信者の名前", "ISO-2022-JP"); // 送信元(自分) Properties props = new Properties(); Session session = Session.getDefaultInstance(props, null); MimeMessage message = new MimeMessage(session); try { message.setFrom(FromAddress); message.addRecipient(Message.RecipientType.TO, ToAddress); message.setSubject("件名", "ISO-2022-JP"); message.setText("本文"); Transport.send(message); } catch (MessagingException e) { e.printStackTrace(); } } }