Smtp 无法使用JAVA MAIL API在yahoo中回复邮件
同样的一段代码在Gmail中成功地用于回复邮件,但在yahoo中,我发现了一个错误 这是我试过的代码Smtp 无法使用JAVA MAIL API在yahoo中回复邮件,smtp,jakarta-mail,yahoo-mail,Smtp,Jakarta Mail,Yahoo Mail,同样的一段代码在Gmail中成功地用于回复邮件,但在yahoo中,我发现了一个错误 这是我试过的代码 Message[] messages2 = folder.search(new FlagTerm(new Flags(Flags.Flag.SEEN), false)); Message msg = messages2[i]; System.out.println("\n 1st ===> setup Mail Server Properties..");
Message[] messages2 = folder.search(new FlagTerm(new Flags(Flags.Flag.SEEN), false));
Message msg = messages2[i];
System.out.println("\n 1st ===> setup Mail Server Properties..");
mailServerProperties = System.getProperties();
mailServerProperties.put("mail.smtp.port", "587");
mailServerProperties.put("mail.smtp.auth", "true");
mailServerProperties.put("mail.smtp.starttls.enable", "true");
System.out.println("Mail Server Properties have been setup successfully..");
getMailSession = Session.getDefaultInstance(mailServerProperties, null);
Message replyMessage = new MimeMessage(getMailSession);
replyMessage = (MimeMessage) msg.reply(false);
replyMessage.setFrom(new InternetAddress(to));
replyMessage.setText("Thanks");
replyMessage.setReplyTo(msg.getReplyTo());
// Send the message by authenticating the SMTP server
// Create a Transport instance and call the sendMessage
Transport t = session.getTransport("smtp");
try {
//connect to the smpt server using transport instance
//change the user and password accordingly
t.connect("smtp.mail.yahoo.com",table_user, table_pass);
t.sendMessage(replyMessage,
replyMessage.getAllRecipients());
} finally {
t.close();
}
System.out.println("message replied successfully ....");
我得到的错误是:
com.sun.mail.smtp.SMTPSendFailedException: 550 Request failed; Mailbox unavailable
at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1829)
at com.sun.mail.smtp.SMTPTransport.finishData(SMTPTransport.java:1634)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:889)
at mail$8.doInBackground(mail.java:1114)
at mail$8.doInBackground(mail.java:1)
at javax.swing.SwingWorker$1.call(SwingWorker.java:295)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at javax.swing.SwingWorker.run(SwingWorker.java:334)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
请给我指出正确的方向,我做错了什么。雅虎邮件服务器不喜欢你的回复邮件收件人之一。尝试启用,您可能会获得更多有关错误的信息 还要注意,您是通过使用mimessage构造函数创建replyMessage的,然后丢弃该值并将其分配给reply方法的返回值。您可以取消对构造函数的调用,而构造函数什么也不做