JAVAmail不能发送
源程序:
1:
package main;
import java.io.UnsupportedEncodingException;
import java.util.Properties;
import javax.mail.Address;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class Class1{
public static void main(String args[]) throws MessagingException, UnsupportedEncodingException{
String host = "SMTP.sina.com";
String from = "xiaoxi@sina.com";
String to = "guoxiaoxi@staff.hexun.com";
// Get system properties
Properties props = System.getProperties();
// Setup mail server
//props.put("mail.transport.protocol","smtp");
props.put("mail.smtp.host", host);
//props.put("mail.smtp.port","25");
props.put("mail.smtp.auth","true");
MyAuthenticator myauth = new MyAuthenticator("xiaoxi@sina.com", "123");
Session session = Session.getDefaultInstance(props, myauth);
// Get session
//Session session = Session.getDefaultInstance(props, null);
// 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
Transport.send(message);
//Transport transport = session.getTransport("smtp");
//transport.connect("smtp.sina.com", "xiaoxi@sina.com", "123"); /// 这里的地址要与 标志1的地址雷同.
//transport.sendMessage(message, message.getAllRecipients());
System.out.println("发送完毕!");
}
}
2:
package main;
import javax.mail.PasswordAuthentication;
class MyAuthenticator extends javax.mail.Authenticator {
private String strUser;
private String strPwd;
public MyAuthenticator(String user, String password){
this.strUser = user;
this.strPwd = password;
}
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(strUser, strPwd);
}
}
========================================
错误:
Exception in thread "main" javax.mail.SendFailedException: Sending failed;
nested exception is:
javax.mail.AuthenticationFailedException
at javax.mail.Transport.send0(Transport.java:219)
at javax.mail.Transport.send(Transport.java:81)
at main.Class1.main(Class1.java:40)
1:
package main;
import java.io.UnsupportedEncodingException;
import java.util.Properties;
import javax.mail.Address;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class Class1{
public static void main(String args[]) throws MessagingException, UnsupportedEncodingException{
String host = "SMTP.sina.com";
String from = "xiaoxi@sina.com";
String to = "guoxiaoxi@staff.hexun.com";
// Get system properties
Properties props = System.getProperties();
// Setup mail server
//props.put("mail.transport.protocol","smtp");
props.put("mail.smtp.host", host);
//props.put("mail.smtp.port","25");
props.put("mail.smtp.auth","true");
MyAuthenticator myauth = new MyAuthenticator("xiaoxi@sina.com", "123");
Session session = Session.getDefaultInstance(props, myauth);
// Get session
//Session session = Session.getDefaultInstance(props, null);
// 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
Transport.send(message);
//Transport transport = session.getTransport("smtp");
//transport.connect("smtp.sina.com", "xiaoxi@sina.com", "123"); /// 这里的地址要与 标志1的地址雷同.
//transport.sendMessage(message, message.getAllRecipients());
System.out.println("发送完毕!");
}
}
2:
package main;
import javax.mail.PasswordAuthentication;
class MyAuthenticator extends javax.mail.Authenticator {
private String strUser;
private String strPwd;
public MyAuthenticator(String user, String password){
this.strUser = user;
this.strPwd = password;
}
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(strUser, strPwd);
}
}
========================================
错误:
Exception in thread "main" javax.mail.SendFailedException: Sending failed;
nested exception is:
javax.mail.AuthenticationFailedException
at javax.mail.Transport.send0(Transport.java:219)
at javax.mail.Transport.send(Transport.java:81)
at main.Class1.main(Class1.java:40)
...全文
相关推荐
javaMail 25端口不能用
在描述中提到的“javaMail 25端口不能用”,这通常是指在使用 JavaMail 发送邮件时,由于某些原因无法通过标准的 SMTP(Simple Mail Transfer Protocol)25
使用JavaMail发送邮件保证成功的方法
**使用适当的异常处理**:捕获`MessagingException`及其子类,这类异常通常表示邮件发送失败。但需要注意,异常处理不能完全保证邮件发送成功,因为有些错误可能在后续的投递阶段出现。
Android使用JavaMail后台发送邮件遇到的一些问题
由于Android系统安全限制,不能直接使用JavaMail的标准库,而是需要使用专门为Android优化的开源库,如AndroidJavaMailSender。
利用JavaMail发送邮件
该程序通过JavaMail是实现邮件的发送,代码经过测试并成功,如果不能成功,请你在outlook下测试,看看你的设置是否正确。其它类包都包含在工程里面,并设置好路径了,你下载后,只要加载到Eclip
javamail写的。但是还不能用
javamail写的。但是还不能用"表明可能是一个使用JavaMail开发的电子邮件系统或者服务,目前正处于开发阶段或存在一些问题,尚未对外公开或稳定运行。


