我正在尝试通过Java中的电子邮件发送短信。
当我使用以下方法通过Outlook执行此操作时,它的工作非常棒。
但是,当我使用JavaMail在Java中尝试时,我得到了:
java.mail.SendFailedException:无效的地址
Properties props = new Properties();
props.put("mail.smtp.host", "mail.xxxx.org");
props.put("mail.transport.protocol", "smtp");
Session session = Session.getInstance(props, null);
String msgBody = "You have a new message.";
try {
javax.mail.Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("myemail@email.com", "Email Name"));
msg.addRecipient(javax.mail.Message.RecipientType.TO, new InternetAddress("5417061233@vtext.com", "Phone"));
msg.setSubject("New Message.");
msg.setContent(msgBody, "text/plain");
Transport.send(msg);
}
catch (Exception e) {
// ...
}
当我更改行
时msg.addRecipient(javax.mail.Message.RecipientType.TO, new InternetAddress("5417061233@vtext.com", "Phone"));
到
msg.addRecipient(javax.mail.Message.RecipientType.TO, new InternetAddress("myemail@email.org", "Phone"));
它工作正常。
非常感谢任何帮助或提示。
感谢。
答案 0 :(得分:1)
我建议检查SMTP。通常,SMTP允许您在自己的域中发送电子邮件,即使没有记录,但他们希望登录以外发送电子邮件。
这里(http://www.mkyong.com/java/javamail-api-sending-email-via-gmail-smtp-example/)你可以找到一个如何从gmail发送电子邮件的例子,需要认证