Erro ao envair email pelo java

2 respostas
desenvolvimentojava-sejava
shodaime

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!");
            }
        }

    }

2 Respostas

campelo.m

Tente dar um ping em smtp.gmail.com e veja se o firewall ou proxy esta bloqueando.
Veja esse [tutorial] (https://www.mkyong.com/java/javamail-api-sending-email-via-gmail-smtp-example/)

shodaime

pinguei o endereço do gmail e está normal, o problema mesmo é que se eu não alterar a configuração da conta os e-mails não são enviados mesmo.

Criado 24 de novembro de 2016
Ultima resposta 28 de nov. de 2016
Respostas 2
Participantes 2