Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Com.sun.mail.smtp.SMTPSenderFailedException: 550 not local sender over smtp

Арсений Порфирьев Ученик (241), на голосовании 1 год назад
Доброго времени суток добрые люди, хочу помощи попросить, вот пишу проект, веб приложения, и сейчас пишу подтверждение почты через mail. Но вылетает ошибка при отправке, 550 not local sender over smtp. И в гугле, и с чатом не смог разобраться как пофиксить, кто сталкивался с таким, прошу подскажите. Весь код прикреплю скринами, если нужна доп информация, просите скину. Код в пропертис mail.password изменил в целях безопасности, но он сгенирирован мейлом для сторонних приложений.
Дополнен 1 год назад
p.s. Просидев еще пару часов к ряду, наткнулся на статью на стаке, нужно было просто еще раз указать, откуда мы отправляем письмо. public boolean sendVerificationCode(String email, String verificationCode){
System.out.println("Зашли в метод 1");
SimpleMailMessage message = new SimpleMailMessage();
System.out.println("Зашли в метод 2");
message.setFrom(" senya.porfirev@bk.ru "); -----------------------------------ВОТ ТУТ
message.setTo(email);
System.out.println("Зашли в метод 3. Отправляем письмо на мейл: " + email);
message.setSubject("Код подтверждения");
System.out.println("Зашли в метод 4");
message.setText("Ваш код подтверждения: " + verificationCode);
System.out.println("Зашли в метод 5");
try {
mailSender.send(message);
System.out.println("Зашли в метод 6");
return true;
}catch (MailException e){
System.err.println(e.getMessage());
return false;
}
}
Голосование за лучший ответ
Sergio 2.1 Оракул (67303) 1 год назад
Ошибка SMTPSenderFailedException: 550 not local sender over smtp обычно происходит, когда SMTP-сервер отказывает в доставке, потому что отправитель не является локальным пользователем. В вашем случае, смотря на код, ошибка может быть связана с тем, как вы устанавливаете отправителя в message.setFrom(" senya.porfirev@bk.ru ");.

В сообщении об ошибке есть пробелы до и после адреса электронной почты, которые могут вызывать проблемы. Убедитесь, что вы используете чистый электронный адрес, без лишних пробелов.

Ищите замену на: message.setFrom(" senya.porfirev@bk.ru ");

Если это не решает проблему, то проблема может быть связана со SMTP сервером. Проверьте свои настройки SMTP и убедитесь, что ваш почтовый сервер разрешает отправку от вашего электронного адреса.

Также, проверьте, условия безопасности, предоставляемые почтовым сервером. Некоторые серверы могут требовать специальное разрешение для отправки сообщений через SMTP.

Также обратите внимание, что некоторые почтовые службы (например, Google) по умолчанию блокируют низкоуровневые подключения SMTP, поскольку они считают их опасными. Если вы используете такую почтовую службу, вам может потребоваться настроить её, чтобы разрешить "менее безопасные приложения" подключаться к вашей учетной записи.
Арсений ПорфирьевУченик (241) 1 год назад
Как я написал выше, проблема была как раз таки с отсутствием message.setFrom, но в комментарии под своей же пост, я указал, что добавил его и проблема ушла. Спасибо за помощь!
Arty ARПрофи (705) 10 месяцев назад
Благодарен за помощь, причина оказалась в message.setFrom
Похожие вопросы