Ciao a tutti,
apro questa discussione i quanto sto cercando di inviare le mail dall'applicativo tramite il provider di register.
Solo che al momento dell'invio dell'email mi presenta questa eccezione
javax.mail.AuthenticationFailedException: 535 5.7.0 ...authentication rejected
Sapreste dirmi come mai?
Vi posto il codice che ho scritto:
codice:
ConfigurazioneEmail_DTO conf = (ConfigurazioneEmail_DTO) getSession().getAttribute("configurazioneServerEmail");
final Credenziali_Email_DTO parametriEmail = (Credenziali_Email_DTO) getSession().getAttribute("credenziali");
Properties props = new Properties();
props.put("mail.smtp.auth", conf.isAuth());
//props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.host", conf.getHostSend());
props.put("mail.smtp.port", conf.getPortSend());
props.put("mail.smtp.protocol", conf.getProtocolSend());
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
Session session = Session.getInstance(props,
new javax.mail.Authenticator() {
protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
return new javax.mail.PasswordAuthentication(parametriEmail.getEmail(), parametriEmail.getPassword());
}
});
try {
Message message = new MimeMessage(session);
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(ServletActionContext.getRequest().getParameter("a")));
message.setRecipients(Message.RecipientType.CC,
InternetAddress.parse(ServletActionContext.getRequest().getParameter("cc")));
message.setRecipients(Message.RecipientType.BCC,
InternetAddress.parse(ServletActionContext.getRequest().getParameter("ccn")));
message.setSubject(ServletActionContext.getRequest().getParameter("oggetto"));
message.setText(ServletActionContext.getRequest().getParameter("contenuto"));
Transport.send(message);
} catch (AddressException e) {
// TODO Auto-generated catch block
BaseAction.log(ActionEmail.class, Priority.ERROR, "Errore: "+e.getMessage());
messaggio = "IndirizzoNonTrovato";
} catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
BaseAction.log(ActionEmail.class, Priority.ERROR, "Errore: "+e.getMessage());
messaggio = "ErroreMessaggioNonTrovata";
}
messaggio = "InvioEmailCorrettamente";
String data = caricamentoHome();
ServletActionContext.getRequest().setAttribute("data", data);
return "successPostaInArrivo";
}
Grazie anticipatamente.