【发布时间】:2015-06-16 17:20:43
【问题描述】:
我需要使用客户端设置发送电子邮件。使用端口 587 访问主机使用 STARTTLS 安全性。 使用以下代码进行测试(为安全起见更改了客户数据):
String host = "zimbra.mydomain.net.br";
String port = "587";
String address = "mail@mydomain.net.br";
String pass = "******";
Properties props = new Properties();
props.put("mail.transport.protocol", "smtp");
props.put("mail.smtp.quitwait", "false");
props.put("mail.smtp.host", host);
props.put("mail.smtp.user", address);
props.put("mail.smtp.password", pass);
props.put("mail.smtp.port", port);
props.put("mail.smtp.ssl.trust", "*");
Session session = Session.getDefaultInstance(props, null);
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(address));
Multipart multiPart=new MimeMultipart();
InternetAddress toAddress = new InternetAddress("rnn2@live.com");
message.addRecipient(Message.RecipientType.TO, toAddress);
message.setSubject("Send Auto-Mail");
message.setContent(multiPart);
message.setText("Demo For Sending Mail in Android Automatically");
Transport transport = session.getTransport("smtp");
transport.connect(host, address, pass);
transport.sendMessage(message, message.getAllRecipients());
transport.close();
例外:
javax.mail.SendFailedException:无效地址; 嵌套异常是: com.sun.mail.smtp.SMTPAddressFailedException:554 5.7.1 unknown[000.000.000.00]:客户端主机被拒绝:访问被拒绝
-- 编辑--
调试:getProvider() 返回 javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc.,1.4.1] 调试 SMTP:useEhlo true,useAuth false 调试 SMTP:尝试连接到主机“zimbra.myclientaddress.net.br”,端口 587,isSSL false 220 zimbra.myclientaddress.net.br ESMTP 后缀 调试 SMTP:连接到主机“zimbra.myclientaddress.net.br”,端口:587 EHLO 本地主机
250-zimbra.myclientaddress.net.br
250-流水线
250 尺寸 1741203456
250-VRFY
250-ETRN
250-STARTTLS
250 个增强状态代码
250-8BITMIME
250 DSN
调试 SMTP:找到扩展名“PIPELINING”,arg“”
调试 SMTP:找到扩展名“SIZE”,arg“1741203456”
调试 SMTP:找到扩展名“VRFY”,arg“”
调试 SMTP:找到扩展名“ETRN”,arg“”
调试 SMTP:找到扩展名“STARTTLS”,arg“”
调试 SMTP:找到扩展名“ENHANCEDSTATUSCODES”,arg“”
调试 SMTP:找到扩展名“8BITMIME”,arg“”
调试 SMTP:找到扩展名“DSN”,arg“”
调试 SMTP:use8bit false
发件人:
250 2.1.0 好的
RCPT 收件人:
554 5.7.1:客户端主机被拒绝:访问被拒绝
调试 SMTP:地址无效
调试 SMTP:rnn2@live.com
调试 SMTP:由于目标地址无效,发送失败
RSET
250 2.0.0 好的
【问题讨论】:
标签: java android email jakarta-mail