2

JavaMailを使用してメール通知を実装する方法を試していました。コードを記述しましたが、エラーはありません。しかし、電子メールは送信されていません。JSF2でGAEを使用しています。

Properties props = new Properties();
javax.mail.Session session1 = javax.mail.Session.getDefaultInstance(props, null);

String msgBody = "This is a test mail";

try {
    System.out.println("Email notification is sending");
    Message msg = new MimeMessage(session1);
    msg.setFrom(new InternetAddress("myGmailId1@gmail.com", "Example.com Admin"));
    msg.addRecipient(Message.RecipientType.TO,
            new InternetAddress("myGmailId2@gmail.com", "Mr. User"));
    msg.setSubject("Your Example.com account has been activated");
    msg.setText(msgBody);
    Transport.send(msg);
    System.out.println("Email notification has been sent");
} catch (AddressException e) {
    // ...
} catch (MessagingException e) {
    // ...
}

どこが間違っていたのですか?

4

1 に答える 1

4

アプリの管理者として登録されている送信者のメールアドレス、またはアプリにログインしている現在のユーザーのメールアドレスを確認してください。

App Engine Mail APIのドキュメントによると:

セキュリティ上の理由から、メッセージの送信者アドレスは、アプリケーションの管理者の電子メールアドレス、またはアプリの有効な電子メール受信アドレスである必要があります(メールの受信を参照)。ユーザーのアカウントがGmailアカウントであるか、Google Appsによって管理されているドメインにある場合、送信者は、ログインしている現在のユーザーのGoogleアカウントのメールアドレスにすることもできます。

于 2012-02-17T12:13:14.473 に答える