La notifica di email utilizzando JavaMail
-
27-10-2019 - |
Domanda
I stava cercando un metodo per implementare la notifica e-mail Utilizzando JavaMail.I scritto il codice e non v'è alcun errore. Ma nessun email è stata inviata. Sto 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) {
// ...
}
Dove ho sbagliato?
Soluzione
Controlla che il tuo indirizzo e-mail del mittente sia registrato come l'amministratore della vostra applicazione, o l'indirizzo di posta elettronica dell'utente corrente che ha effettuato l'accesso al app.
Secondo il App Engine posta documentazione API :
Per motivi di sicurezza, l'indirizzo del mittente di un messaggio deve essere il indirizzo di posta elettronica di un amministratore per l'applicazione o qualsiasi valida e-mail che riceve l'indirizzo per l'applicazione (vedere Ricezione Mail). Il mittente può anche essere l'indirizzo email dell'account Google dell'utente corrente che è firmato in , se l'account utente è un account Gmail o si trova su una dominio gestito da Google Apps.