Problems with sending mail from Spring MVC Web

0

I have a problem with sending emails from my web application with spring web mvc This is my code, it would be very helpful for someone to give me an answer, thank you in advance.

Log-File:

StandardWrapperValve[dispatcher]: Servlet.service() for servlet dispatcher threw exception

java.lang.NullPointerException     at controller.AddController.enviarCorreo (AddController.java:127)     at controller.AddController.form (AddController.java:113)     at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)     at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)     at java.lang.reflect.Method.invoke (Method.java:498)     at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod (HandlerMethodInvoker.java:175)     at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod (AnnotationMethodHandlerAdapter.java:446)     at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle (AnnotationMethodHandlerAdapter.java:434)     at org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:945)     at org.springframework.web.servlet.DispatcherServlet.doService (DispatcherServlet.java:876)     at org.springframework.web.servlet.FrameworkServlet.processRequest (FrameworkServlet.java:961)     at org.springframework.web.servlet.FrameworkServlet.doPost (FrameworkServlet.java:863)     at javax.servlet.http.HttpServlet.service (HttpServlet.java:707)     at org.springframework.web.servlet.FrameworkServlet.service (FrameworkServlet.java:837)     at javax.servlet.http.HttpServlet.service (HttpServlet.java:790)     at org.apache.catalina.core.StandardWrapper.service (StandardWrapper.java:1682)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:344)     at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:214)     at org.glassfish.tyrus.servlet.TyrusServletFilter.doFilter (TyrusServletFilter.java:305)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:256)     at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:214)     at org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:316)     at org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:160)     at org.apache.catalina.core.StandardPipeline.doInvoke (StandardPipeline.java:734)     at org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:673)     at com.sun.enterprise.web.WebPipeline.invoke (WebPipeline.java:99)     at org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:174)     at org.apache.catalina.connector.CoyoteAdapter.doService (CoyoteAdapter.java:416)

Source code:

package ejb;

import java.util.Properties;
import javax.ejb.Stateless;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

@Stateless
public class MailSenderBean {

public void sendEmail(String fromEmail, String username, String password, String toEmail, String subject, String message) throws AddressException, MessagingException{

    Properties props = System.getProperties();

    props.put("mail.smtp.host", "smtp.gmail.com");
    props.put("mail.smtp.auth", "true");
    props.put("mail.smtp.port", "465");
    props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
    props.put("mail.smtp.socketFactory.port", "465");
    props.put("mail.smtp.socketFactory.fsslback", "false");

    Session mailSession = Session.getDefaultInstance(props, null);

    mailSession.setDebug(true);

    Message mailMessage = new MimeMessage(mailSession);

    mailMessage.setFrom(new InternetAddress(fromEmail));

    mailMessage.setRecipient(Message.RecipientType.TO, new InternetAddress(toEmail));
    mailMessage.setText(message);

    mailMessage.setSubject(subject);

    Transport transport = mailSession.getTransport("smtp");

    transport.connect("smtp.gmail.com", fromEmail, password);

    transport.sendMessage(mailMessage, mailMessage.getAllRecipients());
}
}

public void enviarCorreo(int id_requesi, String[] para, int id_usuario){

    String email = "???";
    String username = "???";
    String password = "???"; 

    try {
        mailSender.sendEmail(email, username, password, "[email protected]", "hola", "hola");
    } catch (MessagingException ex) {
        Logger.getLogger(AddController.class.getName()).log(Level.SEVERE, null, ex);
    }
}
    
asked by Jhenner Tigreros 05.11.2018 в 00:05
source

0 answers