1
Gmail、Hotmail、およびOutlookアカウントからメールを送信するためにJavaメールAPIを使用しました。 GmailとHotmailのではうまくいきましたが、Outlookでは機能しません。JavaMail例外:STOREDRV.Submission.Exception:OutboundSpamException
Outlookの送信者クラスのコード
public class OutlookSender extends javax.mail.Authenticator {
private String mailhost = "smtp-mail.outlook.com";
private String user;
private String password;
private Session session;
static {
Security.addProvider(new JSSEProvider());
}
public OutlookSender(String user, String password) {
this.user = user;
this.password = password;
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.host", mailhost);
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.port", "587");
session = Session.getDefaultInstance(props, this);
session.setDebug(true);
}
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(user, password);
}
public synchronized void sendMail(String subject, String body,
String sender, String recipients) throws Exception {
MimeMessage message = new MimeMessage(session);
DataHandler handler = new DataHandler(new ByteArrayDataSource(body.getBytes(), "text/plain"));
message.setSender(new InternetAddress(sender));
message.setSubject(subject);
message.setDataHandler(handler);
if (recipients.indexOf(',') > 0){
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(recipients));
} else{
message.setRecipient(Message.RecipientType.TO, new InternetAddress(recipients));
}
message.saveChanges();
//Transport trans = session.getTransport("smtp");
Transport transport = session.getTransport("smtp");
transport.connect(mailhost, user, password);
transport.sendMessage(message, message.getAllRecipients());
transport.close();
}
}
コード電子メールを送信する:
OutlookSender sender = new OutlookSender("[email protected]", "password");
sender.sendMail("Hello Text", "Body Text Sample", "[email protected]", "[email protected]");
送信した後、私はコンテンツでlogcatから例外が発生しました:
javax.mail.MessagingException: 554-554 5.2.0 STOREDRV.Submission.Exception:OutboundSpamException; Failed to process message due to a permanent exception with message WASCL UserAction verdict is not None. Actual verdict is HipSend...
例外の理由とこの問題を解決する方法を説明してください。ありがとう。
outlook.comはあなたがスパムを送信していると思っているようです。 [JavaMailデバッグ出力](http://www.oracle.com/technetwork/java/javamail/faq/index.html#debug)には何が表示されますか? –
@BillShannon、それは何も表示されません。 – CauCuKien
何も表示されない場合は、正しく実行していません。 –