Envio de email

6 respostas
S

Boa tarde Pessoal,

Ve se alguém pode me ajudar.

Tenho uma classe para enviar um email básico conforme abaixo:

System.out.println(Inicio);

Email email = AbstractEmailFactory.getInstance().createEmail();

email.setData(Teste de E-mail!!!);

email.setMailFrom(remetente);

email.setMailTo(destinatario);

email.setSubject(Assunto);

email.send();	

System.out.println(Fim);

Quando vai executar a linha “email.send()” dá o seguinte erro:

java.lang.NoClassDefFoundError: javax.mail.internet.InternetAddress at br.com.email.SimpleFactory.createdAddress(SimpleEmailFactory.java:27)

Alguém saberia como posso resolver???

Abs

6 Respostas

B

Cara, existe um artigo no GUJ sobre envio de e-mail!

Enviando emails com Java: http://www.guj.com.br/articles/21

J

Verifique se o arquivo mail.jar encontra-se no classpath…

snowblacksoul

Para enviar um e-mail simples

public void enviaEmailSimples() throws EmailException {
		

		System.out.println("Passando pelo email simples :&quot);

		SimpleEmail email = new SimpleEmail();
		email.setHostName("smtp.gmail.com"); // o servidor SMTP para envio do e-mail
		email.addTo("[email removido]", "nome"); // destinatário
		email.setFrom("[email removido]", "nome"); // remetente
		email.setSubject("Teste -> Email simples"); // assunto do e-mail
		email.setMsg("Teste de Email utilizando commons-email"); // conteudo do e-mail
		email.setAuthentication("usuario", "senha");
		email.setSmtpPort(25);
		email.setSSL(true);
		email.setTLS(true);
		email.send();
	}

Você precisa colocar no CLASSPATH da aplicação os seguintes jar´s
commons-email-1.2.jar
mail.jar
mailapi.jar
pop3.jar
smtp.jar
imap.jar
dsn.jar
Ou mais fácil baixe o commons-email-1.2-bin para obter os jars necessarios

Boa sorte

igor_ks

Com esses jars de envio de email, tava vendo o setFrom ali, nao precisa nem de senha…

eu posso colocar ali [email removido] q o destinatario vai receber um email como se fosse o Larry Page da Google? Qual a seguranca disso?
O que garante que o emitente é realmente o emitente?

A

smp0308:
Boa tarde Pessoal,

Ve se alguém pode me ajudar.

Tenho uma classe para enviar um email básico conforme abaixo:

System.out.println(Inicio);

Email email = AbstractEmailFactory.getInstance().createEmail();

email.setData(Teste de E-mail!!!);

email.setMailFrom(remetente);

email.setMailTo(destinatario);

email.setSubject(Assunto);

email.send();	

System.out.println(Fim);

Quando vai executar a linha “email.send()” dá o seguinte erro:

java.lang.NoClassDefFoundError: javax.mail.internet.InternetAddress at br.com.email.SimpleFactory.createdAddress(SimpleEmailFactory.java:27)

Alguém saberia como posso resolver???

Abs

java.lang.NoClassDefFoundError, as exceptions costumam dar a direção do problema… Veja no JavaDoc do JSE o que pode significar esta exceção.

J

igor_ks:
Com esses jars de envio de email, tava vendo o setFrom ali, nao precisa nem de senha…

eu posso colocar ali [email removido] q o destinatario vai receber um email como se fosse o Larry Page da Google? Qual a seguranca disso?
O que garante que o emitente é realmente o emitente?

Você pode… Não há segurança nenhuma…

a unica forma de “tentar” identificar o emitente, é ver o fonte da mensagem se saiu de um SMTP do emitente e este SMTP necessitar de autenticação…
Ou senão usar certificado digital…

Criado 3 de janeiro de 2013
Ultima resposta 4 de jan. de 2013
Respostas 6
Participantes 6