Pessoal, boa tarde!
Poderiam me tirar uma dúvida? Sou iniciante e me deparei com a seguinte situação.
Um sistema de alerta de vencimento de certidões não está mais enviando e-mails para alertar dos vencimentos.
Ele enviava normalmente, porém algo aconteceu.
Abri o código no Netbeans para ver e ao depurar deu a seguinte exceção.
Abaixo o código.
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 EnviaEmail
{
public static void main(String tipo, String empresa, String datavencimento) {
Properties props = new Properties();
/** Parâmetros de conexão com servidor Locaweb */
props.put(“mail.host”, “smtp.sawil.com.br”);
props.put(“mail.transport.protocol”, “smtp”);
props.put(“mail.smtp.auth”, “true”);
props.put(“mail.smtp.port”, “587”);
Session session = Session.getDefaultInstance(props,
new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication("meuemail", "senha");
}
});
/** Ativa Debug para sessão */
session.setDebug(true);
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("Legalizador <meuemail>"));
InternetAddress[] adress = new InternetAddress[2];//Remetente
adress[0] = new InternetAddress("emaildestinatário");
message.setRecipients(Message.RecipientType.TO, adress); //Destinatário(s)
message.setSubject("ALERTA DE VENCIMENTO");//Assunto
message.setText("ALERTA: " + tipo + " da empresa " + empresa + " vence/venceu em " + datavencimento + ".");
/**Método para enviar a mensagem criada*/
Transport.send(message);
} catch (MessagingException e) {
throw new RuntimeException(e);
}
}
}
Ao executar depurando, está gerando a seguinte exceção abaixo:
DEBUG: setDebug: JavaMail version 1.4.7
Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException
at javax.mail.internet.InternetAddress.toString(InternetAddress.java:461)
at javax.mail.internet.InternetAddress.toString(InternetAddress.java:426)
at javax.mail.internet.MimeMessage.setAddressHeader(MimeMessage.java:708)
at javax.mail.internet.MimeMessage.setRecipients(MimeMessage.java:586)
at EnviaEmail.main(EnviaEmail.java:36)
at VerificaData.consulta_cremesp(VerificaData.java:169)
at VerificaData.(VerificaData.java:22)
at Principal.(Principal.java:10)
at Principal$1.run(Principal.java:44)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Uso Locaweb e confirmei com ele os dados e portas, e afirmaram está correto, pois não alteraram.
Poderiam me dar uma mão por gentileza?
Obrigado desde já!!