Pregunta

Estaba intentando un método para implementar la notificación de correo electrónico usando Javamail. Escribí el código y no hay error. Pero no se ha enviado ningún correo electrónico. Estoy usando GAE con JSF2.

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) {
    // ...
}

¿Dónde me equivocé?

¿Fue útil?

Solución

Verifique que la dirección de correo electrónico de su remitente se registre como administrador de su aplicación o la dirección de correo electrónico del usuario actual que ha iniciado sesión en la aplicación.

De acuerdo con la Documentación de la API de correo electrónico de la aplicación:

Para fines de seguridad, la dirección del remitente de un mensaje debe ser la dirección de correo electrónico de un administrador para la solicitud o cualquier dirección de recepción de correo electrónico válida para la aplicación (consulte el correo receptor). los El remitente también puede ser la dirección de correo electrónico de la cuenta de Google del usuario actual que está firmado en, si la cuenta del usuario es una cuenta de Gmail o está en un dominio administrado por Google Apps.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top