Exceção quando eu envio email

3 respostas
D

Ola pessoal

esse mundo do java é muito viciante
tem 3 semanas q estou programando e nao consigo parar so que aconteceu um probleminha aqui cmigo e esta me deixando nervoso

eu tenho uma aplicação que envia email automaticamente
ela estava funcionando bem ( ate eu procurar mexer nela ) agora toda vez que roda ela estora a exceção
[i][color=red]
com.sun.mail.smtp.SMTPSendFailedException: 530-5.5.1 Authentication Required. Learn more at
530 5.5.1 http://mail.google.com/support/bin/answer.py?answer=14257 i16sm8656581wxd.9

at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)
at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583)
at javax.mail.Transport.send0(Transport.java:169)
at javax.mail.Transport.send(Transport.java:98)
at br.com.vitapres.comunicador.src.Email.enviar(Email.java:50)
at br.com.vitapres.comunicador.src.EnviaEmail.main(EnviaEmail.java:15)[/color][/i]

alguem pode me dizer oq é isto? pois ja pesquisei e nao consegui encontrar nada

se tiver como me enviar um exemplo ia ajudar mais

Muito Obrigado

3 Respostas

xandevieira

diegohsilva:

Authentication Required.

vc esta passando login e senha?

seria bom postar o codigo

robinsonbsilva

Por acaso você alterou o servidor SMTP??
Caso sim, verifique se este obriga fazer autenticação??? Se obriga, confirme corretamente o user(alguns exigem que sejam preenchidos o email completo "[email removido]", outros permitem só “usuario”) e password, ou seja…conferência

D

tenhu uma classe que se chama UsuarioSenha que recebe o usuario e a senha

o codigo dela é assim

[b][i]package br.com.vitapres.comunicador.src;

import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;

public class UsuarioSenha extends Authenticator {

public UsuarioSenha() {
	getPasswordAuthentication();
}

public PasswordAuthentication getPasswordAuthentication() {

	String username, password;
	username = "[email removido]";
	password = "xxxxx";

	return new PasswordAuthentication(username, password);
}

}

[/i][/b]

e tenhu uma classe email que recebe isso tudo por parametro da seguinte forma

[i]

[b]public void enviar(String destinatario, String assunto, String mensagem) {

Properties p = new Properties();
p.put("mail.host" , "smtp.gmail.com");
	
	Authenticator logou = new UsuarioSenha();
	
	Session session = Session.getInstance(p, logou);
	
	MimeMessage msg = new MimeMessage(session);
	
	try{
		
		// dê e para //
		msg.setFrom(new InternetAddress("[email removido]"));
		msg.setRecipient(Message.RecipientType.TO, new InternetAddress(
				destinatario));
		
		 //nao esqueca da data!
		// ou ira 31/12/1969 !!!
		msg.setSentDate(new Date());
		System.out.println("pegou a data");

		msg.setSubject(assunto);
		System.out.println("pegou o assunto");
		msg.setText(mensagem);
		System.out.println("Pegou a mensagem");
		
		//enviando a mensagem (ou pelo menos tentando neh!!! srsrsrs) 
		p.put("mail.smtp.starttls.enable","true");
		Transport.send(msg);
		System.out.println("enviou email para " + destinatario);
				
	} 	catch (AddressException e) {
		e.printStackTrace();
		return;
		} catch (MessagingException e) {
			e.printStackTrace();
			return;
		}
		
		
	}
}

[/b][/i]

teria como vc me ajudar ??

Criado 16 de julho de 2008
Ultima resposta 16 de jul. de 2008
Respostas 3
Participantes 3