Email não está sendo enviado

Ocorreu o seguinte problema comigo: eu estava desenvolvendo um formulário que envia emails. estava funcionando normalmente, até que hoje a noite parou de funcionar. Foi apresentada a seguinte exceção:

org.apache.commons.mail.EmailException: Sending the email to the following server failed : smtp.mail.yahoo.com.br:465
at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1242)
at org.apache.commons.mail.Email.send(Email.java:1267)
at email.EnviaEmail.enviarEmail(EnviaEmail.java:24)
at terapia.servlet.ManterDadosFormContato.doGet(ManterDadosFormContato.java:68)
at terapia.servlet.ManterDadosFormContato.doPost(ManterDadosFormContato.java:87)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.mail.MessagingException: Can’t send command to SMTP host;
nested exception is:
javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: java.net.SocketException: Software caused connection abort: recv failed
at com.sun.mail.smtp.SMTPTransport.sendCommand(SMTPTransport.java:1878)
at com.sun.mail.smtp.SMTPTransport.sendCommand(SMTPTransport.java:1865)
at com.sun.mail.smtp.SMTPTransport.close(SMTPTransport.java:973)
at javax.mail.Transport.send0(Transport.java:193)
at javax.mail.Transport.send(Transport.java:120)
at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1232)
… 20 more
Caused by: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: java.net.SocketException: Software caused connection abort: recv failed
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.checkEOF(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.checkWrite(Unknown Source)
at com.sun.net.ssl.internal.ssl.AppOutputStream.write(Unknown Source)
at com.sun.mail.util.TraceOutputStream.write(TraceOutputStream.java:110)
at java.io.BufferedOutputStream.flushBuffer(Unknown Source)
at java.io.BufferedOutputStream.flush(Unknown Source)
at com.sun.mail.smtp.SMTPTransport.sendCommand(SMTPTransport.java:1876)
… 25 more
Caused by: javax.net.ssl.SSLException: java.net.SocketException: Software caused connection abort: recv failed
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.handleException(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.handleException(Unknown Source)
at com.sun.net.ssl.internal.ssl.AppInputStream.read(Unknown Source)
at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:106)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:84)
at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1903)
at com.sun.mail.smtp.SMTPTransport.issueCommand(SMTPTransport.java:1793)
at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1826)
at com.sun.mail.smtp.SMTPTransport.data(SMTPTransport.java:1621)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:888)
at javax.mail.Transport.send0(Transport.java:191)
… 22 more
Caused by: java.net.SocketException: Software caused connection abort: recv failed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(Unknown Source)
at com.sun.net.ssl.internal.ssl.InputRecord.readFully(Unknown Source)
at com.sun.net.ssl.internal.ssl.InputRecord.read(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(Unknown Source)
… 33 more

meu código-fonte:
public boolean enviarEmail(String para, String nome,String assunto, String mensagem, String msgtexto){
try {
HtmlEmail email1 = new HtmlEmail();
email1.setCharset(“ISO-8859-1”);
email1.setHostName(“smtp.mail.yahoo.com.br”); // o servidor SMTP para envio do e-mail(no meu caso, yahoo).
email1.setFrom(meu email, nome do remetente); // remetente
email1.setSubject(assunto); // assunto do e-mail
email1.setHtmlMsg(mensagem);
// configura uma mensagem alternativa caso o servidor não suporte HTML

		email1.setTextMsg(msgtexto);

		email1.setSSL(true); 
		email1.setTLS(true); 
		email1.setSmtpPort(465); 
		email1.setAuthentication(meu email,minha senha); 
		email1.addTo(para);//destinatário 
		email1.send();
	} catch (EmailException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
		return false;
	}
	return true;

}

não sei mais o que posso fazer. Tentei pesquisar sobre isso pela Internet, mas não achei nada q possa ajudar. Eu precisava que isso funcionasse.
Agradeço a atenção de todos.

Carinha, tenta colocar setSSL como false: o que o pessoal tem colocado nos servidores de e-mail é usar só TLS e não SSL.

cara outra dica importante é vc habilitar o envio de emails via smtp nas suas configurações de e-mail do yahoo, da última vez que fui enviar e-mails pelo yahoo me lembro que foi necessário habilitar essa opção por lá para só então conseguir me conectar pela minha aplicação.

agradeço a ajuda de vcs.
abmpicoli, coloquei o setssl como false, mas o erro persisitiu.
gambazinho, como faço para habilitar o envio de emails via smtp pelo yahoo? não encontrei essa opção por lá.
o mais estranho é q antes funcionava. parece q depois de um tempo, após vários emails enviados, essa exceção apareceu.
obrigado.

Carinha, tem algumas coisas que podem estar acontecendo, e com sua conta do Yahoo: esses provedores de e-mail possuem algumas ferramentas anti-spam: eles bloqueiam sua conta se você manda mais que X e-mails por hora, por exemplo.

Tente mandar e-mail usando um cliente de email comum, configurando sua conta do yahoo, por exemplo, o Mozilla Thunderbird ou o Microsoft Outlook Excpress e vê a mensagem que dá…

obrigado, abmpicoli.
vou verificar isso q vc falou.