web-dev-qa-db-ja.com

認証なしでjavax.mailでメールを送信する

Javax.mailを使用してJavaでメールを送信しています。プロジェクトの概念の一部が変更されたため、認証なしでメールを送信する必要があります。 createSession()メソッドを変更する必要があります。

private void createSession() {
    properties.put("mail.smtp.auth", "true");
    properties.put("mail.smtp.starttls.enable", "true");
    properties.put("mail.smtp.Host", server);
    properties.put("mail.smtp.port", port);

    session = Session.getInstance(properties, new javax.mail.Authenticator() {
        protected PasswordAuthentication getPasswordAuthentication() {
            return new PasswordAuthentication(username, password);
        }
    });
}

mail.smtp.authfalseに変更する必要があることは明らかですが、他に何を変更する必要がありますか?

24
muffin
private void createSession() {
    properties.put("mail.smtp.auth", "false");
     //Put below to false, if no https is needed
    properties.put("mail.smtp.starttls.enable", "true");
    properties.put("mail.smtp.Host", server);
    properties.put("mail.smtp.port", port);

    session = Session.getInstance(properties);
}

これで十分だと思います。

20
Kris