Olá galera, estou tentanto enviar e-mail pelo java e estou utilizando a commons-email-1.4.jar e mail 1.4.3.jar, é gerado o seguinte erro no gmail, tentei a porta 587 e também não tive sucesso.
Sending the email to the following server failed : smtp.gmail.com:465
Sending the email to the following server failed : smtp-mail.outlook.com:587
também tentei enviar por uma conta da hotmail e não consegui gerando o mesmo erro acima.
Acessei minha conta da Gmail e tive que realizar uma configuração para dispositivos mais seguros, porém o gmail informa que esta configuração não é segura, após isto o e-mail foi enviado pelo gmail, nas na conta da hotmail(outlook) não consegui enviar abaixo o código para verificarem:
public void enviarEmail() throws EmailException {
if (modeloContato.getRowCount() >= 0) {
List<Contatos> listaContatos = modeloContato.getDataSet();
for (int i = 0; i < listaContatos.size(); i++) {
MultiPartEmail email = new MultiPartEmail();
// cria o anexo.
EmailAttachment attachment = new EmailAttachment();
attachment.setPath(Constantes.CAMINHO_ARQUIVO + nomeAnexo); //caminho da imagem
attachment.setDisposition(EmailAttachment.ATTACHMENT);
attachment.setDescription("logo");
attachment.setName("logovisa");
System.out.println("alterando hostname...");
if (jRadioButtonGmail.isSelected()) {
email.setHostName("smtp.gmail.com");
email.setSmtpPort(465);
}
if (jRadioButtonHotmail.isSelected()) {
email.setHostName("smtp-mail.outlook.com");
email.setSmtpPort(587);
}
//Adicione os destinatários
// email.addTo(Constantes.EMAIL_DESTINATARIO);
email.addTo(listaContatos.get(i).getEmail());
//Configure o seu email do qual enviará
email.setFrom(emailRemetente); // se colocado o segundo valor na frente pode ser visto como nome.
//Adicione um assunto
email.setSubject(assunto);
//Adicione a mensagem do email
email.setSubject(jTextAreaTextoEmail.getText());
//Para autenticar no servidor é necessário chamar os dois métodos abaixo
System.out.println("autenticando...");
email.setAuthentication(emailRemetente, senha);
email.setSSLOnConnect(true);
email.setStartTLSEnabled(true);
//email.setStartTLSEnabled(false);
email.attach(attachment);
System.out.println("enviando...");
email.send();
System.out.println("Email enviado!");
}
}
}