ceramicthree
@ceramicthree

Как авторизироваться в SMTP mail.ru через JavaMail API?

Пытался написать простенькое учебное приложение для отправки писем по почте при помощи JavaMail API, в качестве SMTP сервера выбрал mail.ru. Но при попытке отправить сообщение выскакивает ошибка авторизации. Мне кажется я не так подключаюсь к сессии.
Код метода отправки письма:
public void sendMessage(String to) {
        final String from = this.mail;
        final String password = this.password;
        String host = "smtp.mail.ru";

        Properties props = new Properties();
        props.put("mail.smtp.auth", "true");
        props.put("mail.smtp.starttls.enable", "true");
        props.put("mail.smtp.host", host);
        props.put("mail.smtp.port", "465");

        Session session = Session.getInstance(props,
                new javax.mail.Authenticator(){
                    protected PasswordAuthentication getPassAuth(){
                        return new PasswordAuthentication(from, password);
                    }
        });

        try {
            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress(from));
            message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to));
            message.setSubject("Test message");
            message.setText("This message sended by JavaMailApi");
            Transport.send(message);
            System.out.println("Success");
        }catch (MessagingException e){
            throw new RuntimeException(e);
        }

    }

String from - моя почта, с которой я отправляю письмо.
String password - пароль от этой почты.
Ошибка:
Exception in thread "main" java.lang.RuntimeException: javax.mail.AuthenticationFailedException
  • Вопрос задан
  • 426 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы