новый парень здесь. Я пытаюсь отправить электронное письмо через java, следующий код, который я использую, находится на этом сайте;отправка электронной почты через программу java
public class NewClass extends Object{
public static void main(String [] args)
{
try{
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.mail.yahoo.com"); // for gmail use smtp.gmail.com
props.put("mail.smtp.auth", "true");
props.put("mail.debug", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.port", "587");
props.put("mail.smtp.socketFactory.port", "587");
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "false");
Session mailSession = Session.getInstance(props, new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("[email protected]", "abcd");
}
});
mailSession.setDebug(true); // Enable the debug mode
Message msg = new MimeMessage(mailSession);
//--[ Set the FROM, TO, DATE and SUBJECT fields
msg.setFrom(new InternetAddress("[email protected]"));
msg.setRecipients(Message.RecipientType.TO,InternetAddress.parse("[email protected]"));
msg.setSentDate(new Date());
msg.setSubject("Hello World!");
//--[ Create the body of the mail
msg.setText("Hello from my first e-mail sent with JavaMail");
//--[ Ask the Transport class to send our mail message
Transport.send(msg);
}catch(Exception E){
System.out.println("Unable to send Mail");
System.out.println(E);
}
}}
Это ошибка, я получаю:
javax.mail.MessagingException: Could not connect to SMTP host: smtp.mail.yahoo.com, port: 587; nested exception is: java.net.SocketException: Connection reset
Что я здесь делаю неправильно? любая помощь будет оценена, TIA! PS. извините за любые ошибки формата.
Посмотрите здесь рабочий пример: http://stackoverflow.com/questions/11356237/sending-mail-from-yahoo- id-to-other-email-ids-using-javamail-api – StephaneM
Большое спасибо. Я посетил ссылку и нашел код, размещенный Rahul Agrawal там, чтобы быть более работоспособным, чем другие коды, с которыми я столкнулся, хотя я получаю ошибку аутентификации с его, а точнее: «com.sun.mail.smtp.smtpsendfailedexception : 530 5.7.1 требуется аутентификация ". Я разрешил «Менее безопасный вход» в настройках учетной записи yahoo, но проблема не устранена. Какие-либо предложения ? – NewbProg