Я отправляю почту, используя JavaMailSenderImpl в Springmvc, но получаю Исключение тайм-аута соединения.Иногда код будет работать должным образом, и я могу отправить письмо, но иногда он дает следующее исключение.Пожалуйста, найдите фрагмент кода, который я использую для установки свойств.Это дает java.net.SocketTimeoutException исключение подключения тайм-аута.
Исключение: SMTP-отладка: попытка подключиться к хосту "smtp.office365.com", порт 587, isSSL false Ошибка подключения к почтовому серверу;вложенным исключением является javax.mail.MessagingException: не удалось подключиться к узлу SMTP: smtp.office365.com, порт: 587;Вложенное исключение: java.net.SocketTimeoutException: истекло время ожидания соединения.Неудачные сообщения: javax.mail.MessagingException: не удалось подключиться к узлу SMTP: smtp.office365.com, порт: 587;вложенное исключение: java.net.SocketTimeoutException: истекло время ожидания соединения org.springframework.mail.MailSendException: сбой подключения к почтовому серверу;вложенное исключение: javax.mail.MessagingException: не удалось подключиться к узлу SMTP: smtp.office365.com, порт: 587; вложенное исключение:
Я использую следующие свойства.
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
mailSender.setHost(smtp.office365.com);
mailSender.setPort(587);
mailSender.setUsername(userMailId);
mailSender.setPassword(password);
Properties prop = mailSender.getJavaMailProperties();
prop.put("mail.transport.protocol", "smtp");
prop.put("mail.debug", "true");
prop.put("mail.smtp.auth", "true");
prop.put("mail.smtp.starttls.enable", "true");
prop.put("mail.smtp.host", "smtp.office365.com");
prop.put("mail.smtp.port", 587);
prop.put("mail.smtp.connectiontimeout", 10000);