Erro no JavaMail

Bom dia pessoal, estou com um probleminha em uma classe que efetua envio de e-mails, so que em casa nos testes feitos, funcionou normalmente sem problema nenhum, mas na empresa, esta dando erro.

alguem já passou por isso, alguem pode ajudar?

desde já eu agradeço. 8)
o erro:

Exception in thread "main" javax.mail.MessagingException: Exception reading response;
  nested exception is:
        java.net.SocketException: Connection reset
        at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1611)
        at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1369)
        at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412)
        at javax.mail.Service.connect(Service.java:310)
        at javax.mail.Service.connect(Service.java:169)
        at javax.mail.Service.connect(Service.java:118)
        at javax.mail.Transport.send0(Transport.java:188)
        at javax.mail.Transport.send(Transport.java:118)
        at mail.Send_mail.postMail(Send_mail.java:127)
        at mail.Send_mail.main(Send_mail.java:60)
Caused by: java.net.SocketException: Connection reset
        at java.net.SocketInputStream.read(SocketInputStream.java:185)
        at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:110)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
        at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:88)
        at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1589)
        ... 9 more
Java Result: 1

Olá
Tive 2 probleminhas semenhantes a esse, um era o anti-vírus (Mcaffe) que está bloqueando a saída das informações.
Outro foi o firewall que bloqueava a porta pop e smtp do e-mail… acho que deve ser algo parecido ao seu.

É que eu não lembro a exception que ele reportava, tenta ver essas duas coisas no seu micro, de repente pode ser
que seja isso.

Espero ter ajudado
Flwsss

vlw… vc ajudou…

descobri que esta bloqueado no firewall…

mas o https nao…

tem como eu utilizar o https??

alguem já conseguiu com o gmail?

Obrigado a todos.

Olá
Opa!! Safadinho Firewall… então o gmail tem umas configurações diferentes…
Eu consegui seguindo esse tópico link

Sobre o https, nunca testei para ver se envia… seria na parte
da sua aplicação ou a chamada do javamail?

Se for do javamail… tem um property que ativa protocolo de segurança… não me lembro qual era
mas sei que tem…

Flwsssss

É uma classe…

o codigo…

eu vou ver esse link e tentar implementar…

obrigado. :lol:

[code]/*

  • Created on 25/12/2006
  • Mateus Avelar

*/
package send_mail_almaviva;

import java.awt.AWTException;
import java.io.IOException;
import java.util.Properties;

import java.util.logging.Level;
import java.util.logging.Logger;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.Part;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.swing.JOptionPane;

/**

  • @author Mateus Avelar
  • Classe responsavel pelo envio do e-mail

*/
public class Send_mail {

public static boolean trava_anexo=Criar_mail.trava_anexo; //verificar se há ou nao anexo a ser enviado

public static String attach=Criar_mail.url_arquivo; // caminho do arquivo do anexo

private static final String SMTP_HOST_NAME = "gmail-smtp.l.google.com"; // servidor de smtp

private static final String SMTP_AUTH_USER = "##########@gmail.com"; //usuario de autenticaçao

private static final String SMTP_AUTH_PWD = "######"; //senha de altenticaçao

public static String emailMsgTxt = Criar_mail.mensagem; // corpo da mensagem

public static String emailSubjectTxt = Criar_mail.subject;// assunto do e-mail

private static final String emailFromAddress = "#########@gmail.com"; // remetente

public static String[] emailList = {"######@hotmail.com","########@gmail.com" }; // email de todos os destinatarios

public static void main(String args[]) throws Exception {
        System.out.println("main");
	Send_mail smtpMailSender = new Send_mail();
	smtpMailSender.postMail(emailList, emailSubjectTxt, emailMsgTxt,
			emailFromAddress);
	System.out.println("ENVIO CONCLUIDO A TODOS -main-");

}

public void postMail(String recipients[], String subject, String message,
String from) throws MessagingException {
	boolean debug = false;
	java.security.Security
			.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
    //Configurando a conexao com o gmail
	Properties props = new Properties();
	props.put("mail.transport.protocol", "smtp");
	props.put("mail.smtp.starttls.enable","true");
	props.put("mail.smtp.host", SMTP_HOST_NAME);
	props.put("mail.smtp.auth", "true");

	Authenticator auth = new SMTPAuthenticator();
	Session session = Session.getDefaultInstance(props, auth);

	session.setDebug(debug);

	// ciando a mensagem
	Message msg = new MimeMessage(session);
    // configurando os parametros to e from....
	InternetAddress addressFrom = new InternetAddress(from);
	msg.setFrom(addressFrom);

	InternetAddress[] addressTo = new InternetAddress[recipients.length];
	for (int i = 0; i < recipients.length; i++) {
		addressTo[i] = new InternetAddress(recipients[i]);
	}
	msg.setRecipients(Message.RecipientType.TO, addressTo);



	//
	msg.setSubject(subject);
	msg.setContent(message, "text/html");


    if (trava_anexo==true){
    //enviando anexo

         MimeBodyPart mbp = new MimeBodyPart();
         DataSource fds = new FileDataSource(attach);
         mbp.setDisposition(Part.ATTACHMENT);
         mbp.setDataHandler(new DataHandler(fds));
         mbp.setFileName(fds.getName());
         Multipart mp = new MimeMultipart();
         MimeBodyPart mbp1 = new MimeBodyPart();
         mbp1.setText(message);
         mp.addBodyPart(mbp1);
         mp.addBodyPart(mbp);
         msg.setContent(mp);

    }else{

      Multipart mp = new MimeMultipart();
      MimeBodyPart mbp1 = new MimeBodyPart();
      mbp1.setText(message);
      mp.addBodyPart(mbp1);
      msg.setContent(mp);
    // enviando mensagem sem anexo.
    }

	Transport.send(msg);
    System.out.println("enviado...");
}

void show() throws MessagingException, InterruptedException {
    System.out.println("show");
    SysTray.sending();
    SysTray.pop();
    Send_mail smtpMailSender = new Send_mail();
	smtpMailSender.postMail(emailList, emailSubjectTxt, emailMsgTxt,
			emailFromAddress);
	System.out.println("ENVIO CONCLUIDO A TODOS -show-");
    SysTray.refresh();
    Thread.sleep(1000);
}

/**
 * autenticaçao no server do gmail

 */
private class SMTPAuthenticator extends javax.mail.Authenticator {

	public PasswordAuthentication getPasswordAuthentication() {
		String username = SMTP_AUTH_USER;
		String password = SMTP_AUTH_PWD;
		return new PasswordAuthentication(username, password);
	}
}

}[/code]