Отправка почты не работает из запроса, только из главной Java - PullRequest
0 голосов
/ 09 декабря 2018

У меня проблема с отправкой почты в приложении Java.Если я пытаюсь отправить письмо от Main, оно работает отлично, но когда я пытаюсь отправить письмо из запроса, оно застревает.Я уже пробовал с SSL TLS.Код для моей почтовой службы, где я также устанавливаю SMTP-данные и задаю, кому, от кого и что отправлять.

@Service
public class MailService {

    public static void sendMailSSL(){
        final String username = "x@gmail.com";
        final String password = "password";

        System.out.println("Sending mail...");
        Properties props = new Properties();

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

        Session session = Session.getDefaultInstance(props,
                new javax.mail.Authenticator() {
                    protected PasswordAuthentication getPasswordAuthentication() {
                        return new PasswordAuthentication(username,password);
                    }
                });

        try {

            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress(username));
            message.setRecipients(Message.RecipientType.TO,
                    InternetAddress.parse("plesha.gabi@gmail.com"));
            message.setSubject("Testing Subject");
            message.setText("Dear Mail Crawler," +
                    "\n\n No spam to my email, please!");

            Transport.send(message);

            System.out.println("Done");

        } catch (MessagingException e) {
            throw new RuntimeException(e);
        }
    }

And the class where i call this method: 

@CrossOrigin(maxAge = 3600)
@RestController
@RequestMapping("/user")
public class UserController {


    @Autowired
    private MailService mailService;



    @RequestMapping(value = "/sendmail", method = RequestMethod.PUT)
    public String sendMail() throws MessagingException  {
        MailService.sendMailSSL();
        return "Successfully send an e-mail";
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...