props.put("mail.smtp.auth", "true");
props.put("mail.smtp.user", userId);
props.put("mail.smtp.password",password);
session = javax.mail.Session.getInstance(props,new MyAuthenticator(userId, password));其中的MyAuthenticatorimport javax.mail.*;public  class MyAuthenticator extends Authenticator{
  String userId;
  String password;
  public MyAuthenticator(String userId, String password){
    this.userId = userId;
    this.password = password;
  }
  public PasswordAuthentication getPasswordAuthentication(){
    return new PasswordAuthentication(userId, password);
  }
}

解决方案 »

  1.   

    import javax.mail.*;
    import javax.mail.internet.*;
    import java.util.*;
    public class sendMail
    {
          public static void main(String args[]) throws Exception
          {            String host = "smtp.sina.com.cn";
                String from =   "[email protected]";
                String to = "[email protected]";
                String username = "javamail";
                String password = "password";            // Get system properties
                // Properties props = System.getProperties(); 很多例子中是这样的,其实下面这句更好,可以用在applet中
                Properties props = new Properties();            // Setup mail server
                props.put("mail.smtp.host", host);
                props.put("mail.smtp.auth", "true"); //这样才能通过验证            // Get session
                Session session = Session.getDefaultInstance(props);            // watch the mail commands go by to the mail server
                session.setDebug(true);            // Define message
                MimeMessage message = new MimeMessage(session);
                message.setFrom(new InternetAddress(from));
                message.addRecipient(Message.RecipientType.TO,
                   new InternetAddress(to));
                message.setSubject("Hello JavaMail");
                message.setText("Welcome to JavaMail");            // Send message
                message.saveChanges();
                Transport transport = session.getTransport("smtp");
                transport.connect(host, username, password);
                transport.sendMessage(message, message.getAllRecipients());
                transport.close();
          }
    }
      

  2.   

    import javax.mail.*;
    import javax.mail.internet.*;
    import java.util.*;
    public class sendMail
    {
          public static void main(String args[]) throws Exception
          {            String host = "smtp.sina.com.cn";
                String from =   "[email protected]";
                String to = "[email protected]";
                String username = "javamail";
                String password = "password";            // Get system properties
                // Properties props = System.getProperties(); 很多例子中是这样的,其实下面这句更好,可以用在applet中
                Properties props = new Properties();            // Setup mail server
                props.put("mail.smtp.host", host);
                props.put("mail.smtp.auth", "true"); //这样才能通过验证            // Get session
                Session session = Session.getDefaultInstance(props);            // watch the mail commands go by to the mail server
                session.setDebug(true);            // Define message
                MimeMessage message = new MimeMessage(session);
                message.setFrom(new InternetAddress(from));
                message.addRecipient(Message.RecipientType.TO,
                   new InternetAddress(to));
                message.setSubject("Hello JavaMail");
                message.setText("Welcome to JavaMail");            // Send message
                message.saveChanges();
                Transport transport = session.getTransport("smtp");
                transport.connect(host, username, password);
                transport.sendMessage(message, message.getAllRecipients());
                transport.close();
          }
    }