Email com Java

5 respostas
T

Bom dia a todos.

Antes que pergunte, queria algum material para procurar aprender enviar e-mail com Java.
Tenho um domínio na empresa empresa.local e quero enviar e-mails apenas internos para os colaboradores!!NADA externo.

Há algum tópico, material, algo assim que vocês conheçam que eu possa tirar dúvidas?

5 Respostas

starkiller

O próprio java ja tem um api só pra isso. Procura no google sobre a JavaMail; tem muitos tutoriais ensinando como usar a mesma.

‘‘Esqueci de dizer que aqui no fórum ja tem muita coisa sobre isso’’.

leonardobhbr

No guj
http://www.guj.com.br/articles/21

T

Ali ele fala do JavaMail, eu ouvi falar muito sobre commons e não encontrei algo que me ajudasse…

Na verdade eu queria algo com envio simples de texto e/ou arquivos em anexo!!
Não encontrei nem o arquivo para dar um import, o que fui baixar estava corrompido.

Alguém tem algo?

T

Arquivo de import eu encontro…
aah, e o arquivo anexo é local…Pois o commons anexa arquivos com url válidas se eu não me engano!

T

Meu código de envio de e-mail simples está assim:

package Suporte;

import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.SimpleEmail;

public class teste extends javax.swing.JFrame {

    /** Creates new form teste */
    public teste() {
        initComponents();
    }

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() {

        jButton1 = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jButton1.setText("jButton1");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(144, 144, 144)
                .addComponent(jButton1)
                .addContainerGap(183, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(117, 117, 117)
                .addComponent(jButton1)
                .addContainerGap(160, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
        SimpleEmail send_mail = new SimpleEmail();


        try {
            send_mail.setHostName("smtp.gmail.com"); // o servidor SMTP para envio do e-mail
            send_mail.setSslSmtpPort("465");
            send_mail.setAuthentication("[email removido]", "senha_gmail");
            send_mail.addTo("[email removido]", "Thiago!!"); //destinatário

            send_mail.setFrom("[email removido]", "Thiago"); // remetente
            send_mail.setSubject("Assunto!!"); // assunto do e-mail
            send_mail.setMsg("Teste de Email utilizando commons-email"); //conteudo do e-mail
            send_mail.send(); //envia o e-mail
        } catch (EmailException ex) {
            JOptionPane.showMessageDialog(null,"" + ex);
        }
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new teste().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify
    private javax.swing.JButton jButton1;
    // End of variables declaration
}

E dá o seguinte erro:

org.apache.commons.mail.EmailException: Sending the email to the following server failed: smtp.gmail.com:25
Eu coloquei o setSslSmtpPort("465"); mas não adiantou, é isso mesmo?

****Consegui no gmail, mas preciso que seja feito no terra!!
Provedor Terra:

POP3: pop.terra.com.br

SMTP: smtp.terra.com.br

Autenticação de Segurança? : Sim

Porta SMTP: 25

Porta POP3: 110

Necessita Conexão Segura SSL?: Não

Código com terra:

package Suporte;

import java.awt.EventQueue;
import javax.swing.JOptionPane;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.SimpleEmail;

/**
 *
 * @author THenrique
 */
public class JMailUs {

    public void JMailUs()

    {
        SimpleEmail send_mail = new SimpleEmail();


        try {
            send_mail.setHostName("smtp.terra.com.br"); // o servidor SMTP para envio do e-mail
            send_mail.setAuthentication("[email removido]", "senha");
            send_mail.addTo("[email removido]", "Thiago!!"); //destinatário

            send_mail.setFrom("[email removido]", "Thiago"); // remetente
            send_mail.setSubject("Assunto!!"); // assunto do e-mail
            send_mail.setMsg("Teste de Email utilizando commons-email"); //conteudo do e-mail
            send_mail.send(); //envia o e-mail
        } catch (EmailException ex) {
            JOptionPane.showMessageDialog(null,"" + ex);
        }
    }

}
Criado 3 de fevereiro de 2011
Ultima resposta 3 de fev. de 2011
Respostas 5
Participantes 3