Java tutorial
/*** Copyright (c) 2010-2014 Hrcules S. S. Jos Este arquivo parte do programa CATU. CATU um software livre; voc pode redistribui-lo e/ou modific-lo dentro dos termos da Licena Pblica Geral Menor GNU como publicada pela Fundao do Software Livre (FSF); na verso 2.1 da Licena. Este programa distribudo na esperana que possa ser til, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAO a qualquer MERCADO ou APLICAO EM PARTICULAR. Veja a Licena Pblica Geral Menor GNU em portugus para maiores detalhes. Voc deve ter recebido uma cpia da Licena Pblica Geral Menor GNU sob o nome de "LICENSE.TXT" junto com este programa, se no, acesse o site HSlife no endereco www.hslife.com.br ou escreva para a Fundao do Software Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. Para mais informaes sobre o programa CATU e seus autores acesse o endereo www.hslife.com.br, pelo e-mail contato@hslife.com.br ou escreva para Hrcules S. S. Jos, Av. Ministro Lafaeyte de Andrade, 1683 - Bl. 3 Apt 404, Marco II - Nova Iguau, RJ, Brasil. ***/ package br.com.hslife.catu.service; import java.net.MalformedURLException; import java.net.URL; import java.util.List; import org.apache.commons.mail.EmailAttachment; import org.apache.commons.mail.EmailException; import org.apache.commons.mail.HtmlEmail; import org.apache.commons.mail.MultiPartEmail; import org.apache.commons.mail.SimpleEmail; /** * * Classe EmailService * * Classe responsvel por enviar mensagem de acordo com o mtodo escolhido * O cdigo foi obtido em http://www.guj.com.br/posts/list/106280.java e * adaptado para este projeto. * * @author Hrcules * @version 1.0 */ public class EmailService { /** * envia email simples (smente texto) * Nome remetente, e-mail remetente, nome destinatario, e-mail destinatario, * assunto, mensagem * @param nomeRemetente * @param nomeDestinatario * @param emailRemetente * @param emailDestinatario * @param assunto * @param mensagem * @throws EmailException */ public void enviaEmailSimples(String nomeRementente, String emailRemetente, String nomeDestinatario, String emailDestinatario, String assunto, StringBuilder mensagem) throws EmailException { SimpleEmail email = new SimpleEmail(); email.setHostName("smtp.hslife.com.br"); // o servidor SMTP para envio do e-mail email.addTo(emailDestinatario, nomeDestinatario); //destinatrio email.setFrom(emailRemetente, nomeRementente); // remetente email.setSubject(assunto); // assunto do e-mail email.setMsg(mensagem.toString()); //conteudo do e-mail email.setAuthentication("nao-responde@hslife.com.br", "n0r3ply1@3"); email.setCharset("UTF8"); email.setSmtpPort(465); email.setSSL(true); email.setTLS(true); email.send(); } /** * Envia email no formato HTML * * @param nomeRemetente * @param nomeDestinatario * @param emailRemetente * @param emailDestinatario * @param assunto * @param mensagem * @param anexo * * @throws EmailException * @throws MalformedURLException */ public void enviaEmailFormatoHtml(String nomeRementente, String emailRemetente, String nomeDestinatario, String emailDestinatario, String assunto, StringBuilder mensagem, String anexo) throws EmailException, MalformedURLException { HtmlEmail email = new HtmlEmail(); // adiciona uma imagem ao corpo da mensagem e retorna seu id URL url = new URL(anexo); // URL do arquivo a ser anexado String cid = email.embed(url, "Anexos"); // configura a mensagem para o formato HTML email.setHtmlMsg("<html>Anexos</html>"); // configure uma mensagem alternativa caso o servidor no suporte HTML email.setTextMsg("Seu servidor de e-mail no suporta mensagem HTML"); email.setHostName("smtp.hslife.com.br"); // o servidor SMTP para envio do e-mail email.addTo(emailDestinatario, nomeDestinatario); //destinatrio email.setFrom(emailRemetente, nomeRementente); // remetente email.setSubject(assunto); // assunto do e-mail email.setMsg(mensagem.toString()); //conteudo do e-mail email.setAuthentication("realimoveis@hslife.com.br", "real123"); email.setCharset("UTF8"); //email.setSmtpPort(465); //email.setSSL(true); //email.setTLS(true); // envia email email.send(); } /** * envia email com arquivo anexo * @throws EmailException */ public void enviaEmailComAnexo(String nomeRementente, String emailRemetente, String nomeDestinatario, String emailDestinatario, String assunto, StringBuilder mensagem, List<String> anexos) throws EmailException, MalformedURLException { MultiPartEmail email = new MultiPartEmail(); email.setHostName("smtp.hslife.com.br"); // o servidor SMTP para envio do e-mail email.addTo(emailDestinatario, nomeDestinatario); //destinatrio email.setFrom(emailRemetente, nomeRementente); // remetente email.setSubject(assunto); // assunto do e-mail email.setMsg(mensagem.toString()); //conteudo do e-mail email.setAuthentication("realimoveis@hslife.com.br", "real123"); email.setCharset("UTF8"); //email.setSmtpPort(465); //email.setSSL(true); //email.setTLS(true); // adiciona arquivo(s) anexo(s) EmailAttachment anexo = new EmailAttachment(); for (String arquivo : anexos) { anexo.setPath("/home/hslife/" + arquivo); //caminho do arquivo (RAIZ_PROJETO/teste/teste.txt) anexo.setDisposition(EmailAttachment.ATTACHMENT); anexo.setName(arquivo); email.attach(anexo); anexo = new EmailAttachment(); } // Envia o e-mail email.send(); } }