无法使用Java Mail Api发送Yahoo邮件

7
我正在使用以下代码在Yahoo上发送电子邮件:--

我正在使用以下代码在Yahoo上发送电子邮件:

    Properties   props1 = new Properties();
    EmailAuthenticator authenticator = new EmailAuthenticator(account);

        props1.setProperty("mail.transport.protocol", "smtps");
        props1.setProperty("mail.host", "smtp.mail.yahoo.com");
        props1.put("mail.smtp.auth", "true");
        props1.put("mail.smtp.port", "587");
           props1.put("mail.smtp.starttls.enable", "true");
        smtpSession = Session.getInstance(props1, authenticator);
              smtpSession.setDebug(true);

但我遇到了javax.mail.MessagingException [EOF]这个问题。我已经遇到了五天了,我的LogCat如下:

  Message-ID:<1082699080.2.1356082481793.JavaMail.javamailuser@localhost>
Subject: Hello
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
554 Transaction failed : Cannot send message due to possible abuse; please visit http://postmaster.yahoo.com/abuse_smtp.html for more information
 DEBUG SMTP: got response code 554, with response: 554 Transaction failed : Cannot send message due to possible abuse; please visit http://postmaster.yahoo.com/abuse_smtp.html for more information
RSET
DEBUG SMTP: EOF: [EOF]
javax.mail.MessagingException: [EOF]
com.sun.mail.smtp.SMTPTransport.issueCommand(SMTPTransport.java:1481)
 com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1512)
 com.sun.mail.smtp.SMTPTransport.finishData(SMTPTransport.java:1321)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:637)
   javax.mail.Transport.send0(Transport.java:189)
    javax.mail.Transport.send(Transport.java:118)
   com.privymo.javamail.EmailManager.sendMail(EmailManager.java:203)

请帮忙。

谢谢。


不确定,但请检查您是否正确传递了uerid和pwd以访问邮件服务(发送邮件)。 - kumar
用户名和密码正确。 - user1921139
@user1921139 你解决了吗? - Satyen Udeshi
2个回答

1

我仍然不理解。 我应该怎么办?我已经查看了这个链接,但是没有得到任何帮助。 - user1921139
该错误消息是特定于Yahoo!的SMTP服务器。您应该使用我在答案中发布的客户服务链接直接联系Yahoo!以查明为什么您的电子邮件消息被服务器阻止。 - Martey

0
你有Yahoo! Mail Plus账户吗?
来自JavaMail FAQ“请注意,免费的Yahoo! Mail账户不允许使用POP3或SMTP访问。您必须购买Yahoo! Mail Plus账户才能获得POP3和SMTP访问权限。”

你的概念是正确的,但我想问一件事,在开始时我用这段代码从雅虎发送了电子邮件。有一天正常工作,之后我就遇到了这个错误,为什么? - user1921139
请尝试使用端口号465而不是587 - ThePCWizard
我已经检查了465、25、587,但仍然没有成功。 - user1921139
我认为从第一行就可以清楚地看出,Javamail 只能与 Yahoo! Mail Plus 帐户配合使用。 - ThePCWizard

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接