Disparador de E-mail em Java

8 respostas
denisspitfire

Estou pensando em criar um software que pega um html e envia por e-mail por meio de uma base de dados. Alguem tem uma ideia?

8 Respostas

matheuslmota

Já viu a API do Javamail?

denisspitfire

vlw

denisspitfire

achei um artigo porem nao sei como colocar esses dois atributos da variavel p. Como posso achar a lista de atributos para os e-mails que irei usar?
E esse código funciona sem o tomcat ou algo do genero?

import java.util.Date;
import java.util.Properties;

import javax.mail.*;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;


public class JavaMail {
public static void main(String[] args) {
    Properties p = new Properties();  
    p.put("mail.host", "smtp2.locaweb.com.br");  
    
    Session session = Session.getInstance(p, null);  
    MimeMessage msg = new MimeMessage(session);
    
    try {  
        // "de" e "para"!!  
        msg.setFrom(new InternetAddress("[email removido]"));  
        msg.setRecipient(Message.RecipientType.TO, new InternetAddress("[email removido]"));  
      
        // nao esqueca da data!  
        // ou ira 31/12/1969 !!!  
        msg.setSentDate(new Date());  
      
        msg.setSubject("assunto da mensagem");  
      
        msg.setText("corpo da mensagem");  
      
        // evniando mensagem (tentando)  
        Transport.send(msg);
        System.out.println("email enviado");
    }  
    catch (AddressException e) {  
         
    }  
    catch (MessagingException e) {  
        
    }
    
}
}
denisspitfire

Fiz um outro código que funciona para enviar os emails mas nao da pra enviar html… ele envia como se fosse texto. como posso mudar o tipo de email?

import java.util.Properties;

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 SendMailTLS {

	public static void main(String[] args) {

		final String username = "????";
		final String password = "????";

		Properties props = new Properties();
		props.put("mail.smtp.auth", "true");
		props.put("mail.smtp.starttls.enable", "true");
		props.put("mail.smtp.host", "smtp.????.com.br");
		props.put("mail.smtp.port", "25");

		Session session = Session.getInstance(props,
				new javax.mail.Authenticator() {
					protected PasswordAuthentication getPasswordAuthentication() {
						return new PasswordAuthentication(username, password);
					}
				});

		try {

			Message message = new MimeMessage(session);
			message.setFrom(new InternetAddress("contato@????.com.br"));
			message.setRecipients(Message.RecipientType.TO,
					InternetAddress.parse("[email protected]"));
			message.setSubject("Testing Subject");
			message.setText("<html><body></body>testando</body></html>");

			for (int i = 0; i < 1; i++) {
				Transport.send(message);
				System.out.println("Done: " + i);
			}

		} catch (MessagingException e) {
			throw new RuntimeException(e);
		}
	}
}
Ironlynx

denisspitfire, o método para envio de html não seria o setContent?

Dá uma olhada aqui:

E diga se funcionou! :wink:

Roger10

Bom dia galera não consegui criar um novo tópico, estou com um problema, tenho que enviar um email para o cliente, com quatro botões para avaliação do chamado, com as opções: Bom, Regular, ruim. Quando ele clicar neste botão minha aplicação tem que pegar essa avaliação com o código do cliente e o codigo do chamado.

Roger10

Galera já consegui resolver meu problema, depois de pesquisar muito…

Y

Posta ai como conseguiu . :wink:

Criado 30 de abril de 2012
Ultima resposta 30 de ago. de 2012
Respostas 8
Participantes 5