zzfolin 2010-10-25 22:30
浏览 418
已采纳

我的邮件为什么发不了 ??

谁帮我看下这是什么问题啊 ???

环境:MyEclisp 8.5 + JDK 1.6

代码:

[code="java"]
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
Properties props = new Properties();
//两个属性必须配置
props.setProperty("mail.transport.protocol", "smtp");
//设置需要验证(给提供用户名、密码)
props.setProperty("mail.smtp.auth", "true");

    //该方法每次都返回一个新的session  getDefaultInstance()方法可能返回的是之前创建的
    Session session = Session.getInstance(props);
    //打印与服务器交互的信息
    session.setDebug(true);

    Message msg = new MimeMessage(session);
    msg.setText("你好!");
    //msg.setSubject("中文主题");

    //发件人  (可以不是真实的)
    msg.setFrom(new InternetAddress("lili@sohu.com"));

    Transport transport = session.getTransport();

    //设置 连接服务器、 端口、  用户名、  密码
    transport.connect("smtp.sina.com", 25, "javamail_test100", "123456");

    //静态的send方法 ,直接就能用(发一封邮件可以用他  要不然每发一封就要连一次服务器 效率低) (内部做了链接、发、关链接)  自己连了就不用静态方法了
    //transport.send(msg,new Address[]{new InternetAddress("itcast_test@sohu.com")});

    //非静态send方法(发多封邮件时用  只连一次服务器)  包含收件人(也可以在message里面设置  但是群发的时候 就觉得不好)
    transport.sendMessage(msg, new Address[]{new InternetAddress("javamail_test100@sohu.com")});

    transport.close();
}

[/code]

提示错误:

DEBUG: setDebug: JavaMail version 1.4.3
DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: trying to connect to host "smtp.sina.com", port 25, isSSL false
220 irxd5-187.sinamail.sina.com.cn ESMTP
DEBUG SMTP: connected to host "smtp.sina.com", port: 25

EHLO DreamsLink-PC
250-irxd5-187.sinamail.sina.com.cn
250-8BITMIME
250-SIZE 83886080
250-AUTH PLAIN LOGIN
250 AUTH=PLAIN LOGIN
DEBUG SMTP: Found extension "8BITMIME", arg ""
DEBUG SMTP: Found extension "SIZE", arg "83886080"
DEBUG SMTP: Found extension "AUTH", arg "PLAIN LOGIN"
DEBUG SMTP: Found extension "AUTH=PLAIN", arg "LOGIN"
DEBUG SMTP: Attempt to authenticate
DEBUG SMTP: check mechanisms: LOGIN PLAIN DIGEST-MD5 NTLM
AUTH LOGIN
334 VXNlcm5hbWU6
amF2YW1haWxfdGVzdDEwMA==
334 UGFzc3dvcmQ6
MTIzNDU2
535 #5.7.0 Authentication failed
Exception in thread "main" javax.mail.AuthenticationFailedException: 535 #5.7.0 Authentication failed

at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:648)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:583)
at javax.mail.Service.connect(Service.java:291)
at com._100fly.javamail.FirstSendMail.main(FirstSendMail.java:43)

截图在附件了

  • 写回答

2条回答 默认 最新

  • soartju 2010-10-25 23:37
    关注

    楼上说的很清楚了,看异常是AuthenticationFailedException认证失败,检查你登录smtp.sina.com的用户名和密码是否争取。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站