Я думаю, что это получено, чтобы сделать с использованием SMTPS вместо SMTP для передачи почты. Вот другая версия, смоделированная после JavaMail FAQ при доступе к Gmail. Обратите внимание, что я не учел всю более прекрасную обработку исключений уровня для ясности.
private static void send(
final String username,
final String password,
final String recipients,
final String subject,
final String body)
throws Exception
{
final Session session = Session.getInstance(System.getProperties(), null);
final Message msg = new MimeMessage(session);
final String senderEmail = username.contains("@") ? username : (username + "@gmail.com");
msg.setFrom(new InternetAddress(senderEmail));
final Address[] recipientAddresses = InternetAddress.parse(recipients);
msg.setRecipients(Message.RecipientType.TO, recipientAddresses);
msg.setSentDate(new Date());
msg.setSubject(subject);
msg.setText(body);
final Transport transport = session.getTransport("smtps");
transport.connect(GMAIL_SMTP_HOST, GMAIL_SMTP_PORT, username, password);
transport.sendMessage(msg, recipientAddresses);
transport.close();
}
Я нашел проблему. Ранее я использовал j2ee.jar для импорта javax.mail.
я удалил j2ee.jar из пути к классу и загрузил JavaMail 1.4.1 и поместил в мой путь к классу две банки, smtp.jar и mailapi.jar. Я использую теперь smtps вместо этого , smtp
Transport transport = session.getTransport("smtps");
Теперь тарифицирует работы кода Ящерицы.
Это версия Java Mail API. Я сталкивался с этим вопросом, и я только что обновил API Java Mail до 1.4.3 Он отлично работает для меня!
Спасибо!