[Resolvido]Erro na autenticação ao enviar email

11 respostas
F

Fala galera.

Para alguem ja deu esse tipo de erro na hora da autenticação?

DEBUG SMTP: Attempt to authenticate 515 you do not have permission to access this service 74363 [Thread-34] ERROR com.ecomponentes.util.mail.MandaNews - Erro no envio de mailing: javax.mail.AuthenticationFailedException at javax.mail.Service.connect(Service.java:306) at javax.mail.Service.connect(Service.java:156) at javax.mail.Service.connect(Service.java:105) at javax.mail.Transport.send0(Transport.java:168) at javax.mail.Transport.send(Transport.java:98) at com.ecomponentes.util.mail.MandaNews.enviaEmail(MandaNews.java:42) at com.ecomponentes.util.mail.MandaNews.enviarEmail(MandaNews.java:125) at com.igcpartners.ecomponents.mailing.thread.MailingThread.run(MailingThread.java:38)

Lembrando que às vezes manda o email e às vezes não manda.

Vlwz!

11 Respostas

M

Se você postar seu código (pode ser com usuário e senha fictícios) fica muito mais fácil te ajudarmos.

E se você descobrir a linha de código em que isso ocorre (usando uma ferramenta de debug) aí sim seria ideal.

F
private void enviaEmail(String from, String to, String tratamento,
			String email, MailingTO mailingTO, AnexoTO[] arquivos,
			String assinatura) throws Exception {
		MailUtil mailUtil = new MailUtil();
		MimeMessage message = mailUtil.prepareEmail(email, to,
				mailingTO.subject, this.montaPele2(mailingTO, tratamento),
				arquivos, assinatura, from, mailingTO);		

		// Send message
		Transport.send(message);
	}

A linha que ele ocorre esse erro é na hora de enviar a mensagem, ou seja, no Transport.send(message);(linha 10)

public MimeMessage prepareEmail(String from, String to, String assunto,
			String conteudo, AnexoTO[] arquivos, String assinatura,
			String fromPersonal, MailingTO mailingTO) throws Exception {

		// Get system properties
		Properties props = System.getProperties();

		ResourceBundle rb = ResourceBundle
				.getBundle("com.ecomponentes.util.RBFilesPath");

		// Setup mail server
		props.put("mail.smtp.host", rb.getString("email.smtp"));
		props.put("mail.smtp.port", rb.getString("email.port"));
		props.put("mail.smtp.auth", rb.getString("email.autenticacao"));
		props.put("mail.smtp.dsn.notify", "FAILURE ORCPT=rfc822;" + "[email removido]");
		props.put("mail.smtp.dsn.ret", "FULL"); 
		props.put("mail.mime.charset", "ISO-8859-1");

		// Get session
		Session session;
		Authenticator auth = new Autenticador(rb
				.getString("email.login"), rb.getString("email.senha"));   
		if (rb.getString("email.autenticacao").equals("true")) {
			session = Session.getDefaultInstance(props, auth);
		} else {
			session = Session.getDefaultInstance(props, null);
		}

		session.setDebug(true);
		// Define message
		SMTPMessage message = new SMTPMessage(session);

		SimpleDateFormat sdf = new SimpleDateFormat(
				"EEE, dd MMM yyyy hh:mm:ss z Z");
		message.addHeader("date-time", sdf.format(new Date()));
		message.setNotifyOptions(SMTPMessage.NOTIFY_FAILURE);
		message.setContentLanguage(new String[] { "pr_BR" });
		message.setContent(gerarConteudo(mailingTO, conteudo));
		message.setFrom(new InternetAddress("[email removido]", fromPersonal));
		InternetAddress[] ia = new InternetAddress[1];
		ia[0] = new InternetAddress(fromPersonal);
		message.setReplyTo(ia);
		message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
		message.setSubject(assunto, "ISO-8859-1");

		return message;
	}

esse é o método que monta a mensagem.

Vlw!!!

M

Alguma saída de erro? Adicione nas propriedades o seguinte:

props.put("mail.debug", "true");

E coloque a saída (e exceção, se houver) aqui.

F

Detalhes do debug no console:

DEBUG: JavaMail version 1.4.3
DEBUG: URL jar:file:/C:/workspace_interno/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ecrm/WEB-INF/lib/imap.jar!/META-INF/javamail.providers
DEBUG: successfully loaded resource: jar:file:/C:/workspace_interno/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ecrm/WEB-INF/lib/imap.jar!/META-INF/javamail.providers
DEBUG: URL jar:file:/C:/workspace_interno/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ecrm/WEB-INF/lib/pop3.jar!/META-INF/javamail.providers
DEBUG: successfully loaded resource: jar:file:/C:/workspace_interno/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ecrm/WEB-INF/lib/pop3.jar!/META-INF/javamail.providers
DEBUG: URL jar:file:/C:/workspace_interno/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ecrm/WEB-INF/lib/smtp.jar!/META-INF/javamail.providers
DEBUG: successfully loaded resource: jar:file:/C:/workspace_interno/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ecrm/WEB-INF/lib/smtp.jar!/META-INF/javamail.providers
DEBUG: successfully loaded resource: /META-INF/javamail.default.providers
DEBUG: Tables of loaded providers
DEBUG: Providers Listed By Class Name: {com.sun.mail.smtp.SMTPSSLTransport=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], com.sun.mail.smtp.SMTPTransport=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc], com.sun.mail.imap.IMAPSSLStore=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], com.sun.mail.imap.IMAPStore=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc]}
DEBUG: Providers Listed By Protocol: {imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsy stems, Inc], smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc], pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc]}
DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
DEBUG: URL jar:file:/C:/workspace_interno/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ecrm/WEB-INF/lib/smtp.jar!/META-INF/javamail.address.map
DEBUG: successfully loaded resource: jar:file:/C:/workspace_interno/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ecrm/WEB-INF/lib/smtp.jar!/META-INF/javamail.address.map
DEBUG: setDebug: JavaMail version 1.4.3
DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: trying to connect to host "smtp.igc-partners.com", port 25, isSSL false
220 smtp-03.mandic.com.br ESMTP 
DEBUG SMTP: connected to host "smtp.igc-partners.com", port: 25

EHLO Fernando-Casa.lan
250-smtp-03.mandic.com.br 
250-PIPELINING
250-SIZE 52428800
250-AUTH LOGIN PLAIN
250 8BITMIME
DEBUG SMTP: Found extension "PIPELINING", arg ""
DEBUG SMTP: Found extension "SIZE", arg "52428800"
DEBUG SMTP: Found extension "AUTH", arg "LOGIN PLAIN"
DEBUG SMTP: Found extension "8BITMIME", arg ""
DEBUG SMTP: Attempt to authenticate
DEBUG SMTP: check mechanisms: LOGIN PLAIN DIGEST-MD5 NTLM 
AUTH LOGIN
334 VXNlcm5hbWU6
Y3JtLnNlcnZpZG9yaWdjQGlnYy1wYXJ0bmVycy5jb20=
334 UGFzc3dvcmQ6
MTIzNDU2
515 you do not have permission to access this service
60004 [Thread-34] ERROR com.ecomponentes.util.mail.MandaNews  - Erro no envio de mailing: 
javax.mail.AuthenticationFailedException: 515 you do not have permission to access this service

	at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:648)
	at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:583)
	at javax.mail.Service.connect(Service.java:313)
	at javax.mail.Service.connect(Service.java:172)
	at javax.mail.Service.connect(Service.java:121)
	at javax.mail.Transport.send0(Transport.java:190)
	at javax.mail.Transport.send(Transport.java:120)
	at com.ecomponentes.util.mail.MandaNews.enviaEmail(MandaNews.java:43)
	at com.ecomponentes.util.mail.MandaNews.enviarEmail(MandaNews.java:126)
	at com.igcpartners.ecomponents.mailing.thread.MailingThread.run(MailingThread.java:38)
Caso ele consiga enviar o email:
DEBUG: setDebug: JavaMail version 1.4ea
DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: trying to connect to host "smtp.igc-partners.com", port 25, isSSL false
220 smtp-03.mandic.com.br ESMTP
DEBUG SMTP: connected to host "smtp.igc-partners.com", port: 25

EHLO L50CNN0382
250-smtp-03.mandic.com.br
250-PIPELINING
250-SIZE 52428800
250-STARTTLS
250-AUTH LOGIN PLAIN
250 8BITMIME
DEBUG SMTP: Found extension "PIPELINING", arg ""
DEBUG SMTP: Found extension "SIZE", arg "52428800"
DEBUG SMTP: Found extension "STARTTLS", arg ""
DEBUG SMTP: Found extension "AUTH", arg "LOGIN PLAIN"
DEBUG SMTP: Found extension "8BITMIME", arg ""
DEBUG SMTP: Attempt to authenticate
AUTH LOGIN
334 VXNlcm5hbWU6
Y3JtLnNlcnZpZG9yaWdjQGlnYy1wYXJ0bmVycy5jb20=
334 UGFzc3dvcmQ6
MTIzNDU2
235 nice to meet you
DEBUG SMTP: use8bit false
MAIL FROM:<[email removido]>
250 ok
RCPT TO:<[email removido]>
250 ok
DEBUG SMTP: Verified Addresses
DEBUG SMTP:   [email removido]
DATA
354 go ahead punk, make my day
From: [email removido]
To: [email removido]
Message-ID: <3481535.01255058211404.JavaMail.w512@L50CNN0382>
Subject: TESTE
MIME-Version: 1.0
Content-Type: multipart/mixed;
        boundary="----=_Part_0_30688063.1255058211226"

------=_Part_0_30688063.1255058211226
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;: charset="ISO-8859-1"
"corpo da mensagem"
250 ok [telefone removido] qp 20663 by smtp-03.mandic.com.br
QUIT
221 smtp-03.mandic.com.br Goodbye.

Vlwz!

M

As vezes manda e as vezes dá erro, certo? Isso ocorre com o mesmo usuário e senha ou esses valores são trocados?

M

Apesar de o não ter encontrado na especificação do RFC (talvez por falta de procurar) o código 515, encontrei-o aqui. E diz “Destination mailbox address invalid.”

Seria este o problema?

M

Ahh… encontrei: http://www.ietf.org/rfc/rfc1893.txt.

Mas vendo com mais atenção, percebi que o que funciona, o seu micro se identifica como L50CNN0382 (talvez algum micro na empresa?) e no que não funciona ele usa um EHLO Fernando-Casa.lan (em casa?).

Provavelmente o servidor só aceita que determinados IPs enviem e-mails.

F

hummm… vlw Marcos,vou verificar aqui se pode ser isso.

Vlwz!!!

josmarpeixe

Marco,

O cara que trabalha no provedor do cliente, falou que talvez a forma que estamos trabalhando não tá usando da forma correta. Tipo tá usando uma saída SMTP2 compartilhada deles. Daí teria que mudar para trabalhar em modo localhost, forçando que use o servidor local de lá, o SMTP do servidor que está a aplicação. Não entendi muito bem. Você já pegou algo assim? Pq as vezes envia mais as vezes envia menos na quantidade de emails.

Abraços,
Peixe

josmarpeixe

Marco,

O Fernando  testando essa parada

http://wiki.locaweb.com.br/pt-br/Como_enviar_e-mails_com_JavaMail

e parece que foi. Assim que eu tiver a resposta eu digo se “funfou”.

Peixe

josmarpeixe

Show, funcinou!
Maldição de localhost, nunca iria imaginar essa p…!

Vlw People!

Criado 16 de dezembro de 2009
Ultima resposta 17 de dez. de 2009
Respostas 11
Participantes 3