Я читал на нескольких сайтах, которые при использовании API JavaMail устанавливают для свойства mail.smtp.ssl.enable
значение true. У меня есть код следующим образом:
props.put("mail.smtp.host", "exchangemail1.example.com");
props.put("mail.from", "[email protected]");
props.put("mail.smtp.starttls.enable", "true");
// I tried this by itself and also together with ssl.enable)
props.put("mail.smtp.ssl.enable", "true");
Session session = Session.getInstance(props, null);
MimeMessage msg = new MimeMessage(session);
msg.setFrom();
msg.setRecipients(Message.RecipientType.TO, "[email protected]");
// also tried @gmail.com
msg.setSubject("JavaMail ssl test");
msg.setSentDate(new Date());
msg.setText("Hello, world!\n");
props.put("mail.smtp.auth", "false");
Transport trnsport;
trnsport = session.getTransport("smtp");
trnsport.connect();
msg.saveChanges();
trnsport.sendMessage(msg, msg.getAllRecipients());
trnsport.close();
Это отправляет письмо, но:
- Когда я делаю захват трафика, я вижу, что он не зашифрован.
- При использовании debug (
props.put("mail.debug", "true")
) я вижу, что "isSSL false"
(Я также попытался добавить в props.put("mail.smtp.auth","true")
+ user/password....)
Любые идеи, что я делаю неправильно?