Email com JavaMail utilizando Gmail
E aeeeeeee galera! Depois deste período que passei em exílio estudando sobre a origem e o sentido da vida, voltei com todas as respostas e com mais conhecimento para passar à vocês ("Agora o bixo pega").
Vamos começar com uma solução para você que está fazendo uma aplicação de envio de email, mas não possui um serviço smtp habilitado para o mesmo(Servidores normalmente pagos).
E agora? será que não conseguirei testar minha aplicação sem ter que pagar? Resposta: Sim conseguirá.
Há uma forma de você utilizar sua conta google usar este serviço de grátis. Então. Lets go!
O JavaMail é uma excelente API que fornece uma estrutura independente de plataforma e de protocolo, para enviar, receber e manipular correio eletrônico (não necessariamente internet e-mail) e messaging como clientes.
Altere os seguintes campos:
Vamos começar com uma solução para você que está fazendo uma aplicação de envio de email, mas não possui um serviço smtp habilitado para o mesmo(Servidores normalmente pagos).
E agora? será que não conseguirei testar minha aplicação sem ter que pagar? Resposta: Sim conseguirá.
Há uma forma de você utilizar sua conta google usar este serviço de grátis. Então. Lets go!
O JavaMail é uma excelente API que fornece uma estrutura independente de plataforma e de protocolo, para enviar, receber e manipular correio eletrônico (não necessariamente internet e-mail) e messaging como clientes.
Antes de começar, você vai precisar das seguintes biblotecas:
- mail.jar
- activation.jar
Você encontra as bibliotecas contidas em um único arquivo, no seguinte endereço:
Usando a sua IDE favorita (Eclipse ou NetBeans), crie uma biblioteca chamada JavaMailutilizando os arquivos mail.jar e activation.jar contidos no arquivo compactado. Depois, configure o seu projeto para utilizar a biblioteca JavaMail.
Criando a classe de Envio
Crie a classe JavaMailApp e utilize o código abaixo para enviar email:
import java.util.Properties;
import javax.mail.Address;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class JavaMailApp
{
public static void main(String[] args) {
Properties props = new Properties();
/** Parâmetros de conexão com servidor Gmail */
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "465");
Session session = Session.getDefaultInstance(props, new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication("seuemail@gmail.com","suasenha123");
}
});
import javax.mail.Address;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class JavaMailApp
{
public static void main(String[] args) {
Properties props = new Properties();
/** Parâmetros de conexão com servidor Gmail */
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "465");
Session session = Session.getDefaultInstance(props, new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication("seuemail@gmail.com","suasenha123");
}
});
/** Ativa Debug para sessão */
session.setDebug(true);
session.setDebug(true);
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("seuemail@gmail.com")); //Remetente
Address[] toUser = InternetAddress //Destinatário(s)
.parse("seuamigo@gmail.com, seucolega@hotmail.com, seuparente@yahoo.com.br");
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("seuemail@gmail.com")); //Remetente
Address[] toUser = InternetAddress //Destinatário(s)
.parse("seuamigo@gmail.com, seucolega@hotmail.com, seuparente@yahoo.com.br");
message.setRecipients(Message.RecipientType.TO, toUser);
message.setSubject("Enviando email com JavaMail");//Assunto
message.setText("Enviei este email utilizando JavaMail com minha conta GMail!");
/**Método para enviar a mensagem criada*/
Transport.send(message);
message.setSubject("Enviando email com JavaMail");//Assunto
message.setText("Enviei este email utilizando JavaMail com minha conta GMail!");
/**Método para enviar a mensagem criada*/
Transport.send(message);
System.out.println("Feito!!!");
} catch (MessagingException e) {
throw new RuntimeException(e);
}
}
}
throw new RuntimeException(e);
}
}
}
Altere os seguintes campos:
“seuemail@gmail.com” para a sua conta do Gmail,
“suasenha123” utilizando a senha da sua conta.
E adicione o endereço do destinatário no método .parse
Address[] toUser = InternetAddress.parse(“”);
Pronto! É só compilar!
Email enviado com sucesso!!!
Email enviado com sucesso!!!
OBS: Se você utiliza algum Firewall, verifique se ele está bloqueando as portas SMTP para envio de sua mensagem.
Veja também:
Comentários
Postar um comentário