Bom dia pessoal vejam meu código para envio de e-mail:
[code]Properties p = new Properties();
p.put(“mail.host”, “smtp.mail.yahoo.com.br”);
Session session = Session.getInstance(p, null);
MimeMessage msg = new MimeMessage(session);
try {
// "de" e "para"!!
msg.setFrom(new InternetAddress("paulo.policani@yahoo.com.br"));
msg.setRecipient(Message.RecipientType.TO, new InternetAddress("tecnologia@protecaototal.com.br"));
// nao esqueca da data!
// ou ira 31/12/1969 !!!
msg.setSentDate(new Date());
msg.setSubject("Teste Javamail");
msg.setText("O maior de todos os guerreiros é aquele que vence a si próprio!");
// evniando mensagem (tentando)
Transport.send(msg);
System.out.println("Mensagem enviada com sucesso!");
}
catch (AddressException ea) {
System.out.println("Deu pau no EA" + ea.getMessage());// nunca deixe catches vazios!
}
catch (MessagingException eb) {
System.out.println("Deu pau no EB" + eb.getMessage());// nunca deixe catches vazios!
}[/code]
Cara, eu tinha feito um exemplo de mandar email de uma outra forma, achei um pouco mais tranquilo de entender do que essa forma que você fez. Já testei e está funcionando perfeitamente. Dá uma olhada, qualquer coisa grita!
package br.util;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
public class SendMail
{
private HtmlEmail mail;
public SendMail(){
mail = new HtmlEmail();
}
public void mensagem() {
StringBuffer msg = new StringBuffer();
msg.append( "<body>" );
msg.append( " <table border=1>" );
msg.append( " <tr>" );
msg.append( " <td>Esse é um exemplo de enviar email no Java, </td>\n" );
msg.append( " <td>bem tranquilo e fácil de entender!!!</td>" );
msg.append( " </tr>" );
msg.append( " </table>" );
msg.append( "</body>" );
try{
mail.setHostName( "SVCLEXC2.gvt.net.br" );
mail.addTo( "rafael.costa@gvt.com.br", "Rafael GVT" );
mail.setFrom( "rafalevita@gmail.com", "Rafael Gmail" );
mail.setSubject( "Teste de enviar email com Java" );
mail.setHtmlMsg( msg.toString() );
}
catch( EmailException mailex ){
mailex.printStackTrace();
}
}
public void enviaEmail(){
try{
mail.send();
}
catch( EmailException mailex ){
mailex.printStackTrace();
}
}
public static void main(String[] args)
{
SendMail mail = new SendMail();
mail.mensagem();
mail.enviaEmail();
System.out.println( "Email enviado com sucesso!!!" );
}
}
Além disso, neste mesmo FAQ tem uma dica que só é possível enviar um e-mail após fazer download das mensagens através do POP : http://help.yahoo.com/l/br/yahoo/mail/pop/pop-11.html
Eu nunca usei o SMTP Server do Yahoo.
[code]Properties p = new Properties();
p.put(“mail.host”, “smtp.mail.yahoo.com.br”);
p.put(“mail.smtp.auth”,true);
p.put(“mail.smtp.port”,465);
Session session = Session.getInstance(p, null);
MimeMessage msg = new MimeMessage(session);
try {
// "de" e "para"!!
msg.setFrom(new InternetAddress("paulo.policani@yahoo.com.br"));
msg.setRecipient(Message.RecipientType.TO, new InternetAddress("tecnologia@protecaototal.com.br"));
// nao esqueca da data!
// ou ira 31/12/1969 !!!
msg.setSentDate(new Date());
msg.setSubject("Teste Javamail");
msg.setText("O maior de todos os guerreiros é aquele que vence a si próprio!");
// evniando mensagem (tentando)
Transport.send(msg);
System.out.println("Mensagem enviada com sucesso!");
}
catch (AddressException ea) {
System.out.println("Deu pau no EA");
ea.printStackTrace();// nunca deixe catches vazios!
}
catch (MessagingException eb) {
System.out.println("Deu pau no EB");
eb.printStackTrace();// nunca deixe catches vazios!
}[/code]
Dá o seguinte erro:
Deu pau no EB
javax.mail.MessagingException: [EOF]
at com.sun.mail.smtp.SMTPTransport.issueCommand(SMTPTransport.java:1481)
at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1512)
at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1054)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:634)
at javax.mail.Transport.send0(Transport.java:189)
at javax.mail.Transport.send(Transport.java:118)
at gui.Email$1.actionPerformed(Email.java:117)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at ch.randelshofer.quaqua.QuaquaButtonListener.mouseReleased(QuaquaButtonListener.java:86)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)