API Commons Mail - Usando GMail

Creio que seja totalmente possível.

Porque ele funciona para hotmail, bol, gmail…ao menos lembro de ter testado e funcionado…

[]s

minha dúvida é só posso criar meu próprio serviço de email com a API, configurando um email qualquer e enviando para quem for preciso.

alguém?

Por exemplo:

contato@gambazinho.com.br

e utilizar a api?

se for isso, creio que sim. Pois funciona em outros servidores de email.

Crie e teste pra ver.
Em breve farei este teste também.

[]s

mas a minha dúvida é se consigo CRIAR esse servidor e utilizar, não é utilizar um servidor qualquer, é criar o servidor com a API… acho q isso não da pra fazer né?

Galera que tiver precisando de ajudar fiz um exemplo de como enviar uma mensagem html utilizando API do cammons baseado nos códigos deste topico.

[code]import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.util.Scanner;

import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;

public class TesteCommonsHTML {
public static void main(String[] args) {
try {
// Define qual arquivo deseja enviar
InputStream is = new FileInputStream(“arquivo.html”);

		// Le o arquivo para criar a string com o html
		Scanner arquivo = new Scanner(is);

		// Armazena todo conteudo do arquivo em uma StringBuffer
		StringBuffer msg = new StringBuffer();
		while (arquivo.hasNextLine()) {
			msg.append(arquivo.nextLine());
		}
		// Cria uma mensagem que seria de email do tipo html
		HtmlEmail email = new HtmlEmail();

		// Adiciona a String com o html no email
		email.setHtmlMsg(msg.toString());
		email.setTextMsg("Caso o destinatario nao suporte html aparece esta mensagem");

		// Define as configurações para enviar o email
		email.setDebug(true);
		email.setHostName("smtp.gmail.com");
		email.setAuthentication("SeuLogin", "SuaSenha");//email.setAuthentication("elias", "123456");
		email.setSSL(true);
		email.setFrom("SeuEmail");//email.setFrom("elias@gmail.com.br");
		email.addTo("destinatario");//email.addTo("fulano@uol.com.br");
		email.setSubject("Mensagem como Html");//Assunto do e-mail

		// Envia o E-Mail
		email.send();
        is.close();
	} catch (EmailException e) {
		e.printStackTrace();
	} catch (FileNotFoundException e) {
		e.printStackTrace();
	}
}

}
[/code]

este tópico me ajudou muito Obrigado a todos
espero ter ajudado alguem

Estou tendo problema em utilizar o envio de email quando invocado pelo contexto do tomcat 6.

Segue minha dúvida nesse post http://www.guj.com.br/posts/list/226522.java

Alguém pode me ajudar?

Att,

Cara muito bom este tutorial!
Me ajudou muito. :smiley:

Bom artigo!

Salve galera blz

alguem sabe se é possivel nessa API pedir uma confirmação de entrega de email , (estilo Outlook)

Baum…restaurando esse tópico, se eu precisar um proxy qual seria o procedimento?

não estou conseguindo baixar o activation

Olá ,

Excelente post , parabéns :slight_smile:

Achei esse código mais limpo do que o do seu outro post …

bacana …

E ae pessoal,

andei um pocuo afastado do guj. Vou precisar utilizar novamente o envio de email em um projeto que estou trabalhando e vou analisar o que tem por ai e esses meus post novamente.

Assim que tiver algumas novidades posto aqui pra vocês.

Abraço a todos.

O link do activation.jar está com erro então estou passando outro:
http://www.java2s.com/Code/JarGHIDownloadactivationjar.htm

Se eu mudar isso aqui :
email.setHostName(“smtp.gmail.com”);

Eu consigo fazer ele enviar emails pro MSN ???

Parabéns a todos os colaboradores, para melhorar ainda mais como faz o tratamento de erro quando passamos mais de um destinatário?

public static void enviaEmail(Mensagem mensagem) throws EmailException {
    SimpleEmail email = new SimpleEmail();
    email.setHostName(HOSTNAME);
    email.setFrom(EMAILORIGEM);
    email.setAuthentication(USERNAME, PASSWORD);
    email.setSmtpPort(PORTA);
    
    ///
    for (int i=0; i<mensagem.getDestinatario().size(); i++) {
        email.addTo(mensagem.getDestinatario().get(i));
    }
    
    email.setSubject(mensagem.getTitulo());
    email.setMsg(mensagem.getMesagem());
    email.send();

}

Neste caso aqui, se um dos destinatários não existir nenhum e-mail é enviado… tem como contornar este problema? Tem como enviar apenas para os endereços válidos e ignorar os inválidos?>

.

Não funciona mais !!! pq ?

Parabéns pela iniciativa, gostei muito.