本帖最后由 soliy 于 2009-10-19 16:24:20 编辑

解决方案 »

  1.   

    是不是没有进行用户验证。我的代码是这样的:
    props = System.getProperties();
    props.put("mail.smtp.host", host);
    props.put("mail.smtp.auth", "true");
    session = Session.getDefaultInstance(props, new Authenticator(){
    public PasswordAuthentication getPasswordAuthentication(){
    return new PasswordAuthentication(username,password);
    }
    });
    try {
    MimeMessage message = new MimeMessage(session);
    message.setFrom(new InternetAddress(from));
    InternetAddress[] address = new InternetAddress[str.length];
    for(int i=0;i<str.length;i++){
    address[i] = new InternetAddress(str[i]);
    }

    message.addRecipients(Message.RecipientType.TO, address);
    message.setSubject(subject);
    message.setText(content);
    Transport.send(message);
    dis.close();
      

  2.   

    com.sun.mail.smtp.SMTPSendFailedException: 503 Command Error 错误的命令,是你的程序中少了哪一个步骤了,具体我也不清楚,看1楼吧
      

  3.   

    哈哈,终于解决了,JavaMail的问题困扰了一天多的时间
    在pop3的发送中,客户端发送确实要进行验证,但是还有一个重要的问题是
    服务端必须是开启pop3服务,在qq,sina中可以还要免费设置开启服务,在其他地方的163 126中是要收费的形式才能开启(是默认锁定的)雅虎可以在网上查找信息如何免费开启的