如何使用Mule SMTP连接器与office 365邮箱发送电子邮件?另外如何在Mule中使用SMTPS?

时间:2017-03-01 15:08:02

标签: groovy smtp mule office365 starttls

以下是用于从Office 365邮件帐户发送邮件的流程代码:

                               

收到的例外是: com.sun.mail.smtp.SMTPSendFailedException:530 5.7.57 SMTP;客户端未通过身份验证,无法在MAIL FROM

期间发送匿名邮件

相同的帐户,凭据,主机,端口在groovy脚本中工作:

public static void simpleMail(String from,String password,String to,     String subject,String body)抛出异常{

String host = "smtp.office365.com";
Properties props = System.getProperties();
props.put("mail.smtp.starttls.enable",true);
props.setProperty("mail.smtp.ssl.trust", host);
props.put("mail.smtp.auth", true);      
props.put("mail.smtp.host", host);
props.put("mail.smtp.user", from);
props.put("mail.smtp.password", password);
props.put("mail.smtp.port", "587");

Session session = Session.getDefaultInstance(props, null);
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));

InternetAddress toAddress = new InternetAddress(to);

message.addRecipient(Message.RecipientType.TO, toAddress);

message.setSubject(subject);
message.setText(body);

Transport transport = session.getTransport("smtp");

transport.connect(host, from, password);

transport.sendMessage(message, message.getAllRecipients());
transport.close();
System.out.println("Mail Sent Successfully");

}

因为似乎groovy脚本有“mail.smtp.starttls.enable”:true, “mail.smtp.ssl.trust”:脚本代码中的hostname作为添加的属性。

那么我怎样才能在mule中使用SMTP连接器反映这一点呢?

任何建议都会很棒。

1 个答案:

答案 0 :(得分:0)

要为SMTP连接器启用starttls,请打开电子邮件连接器,单击“高级”选项卡,单击“属性”并选择内联,然后添加项:“ mail.smtp.starttls.enable”,并将值设置为true。 >