public boolean confirmSMTP(String host, String port, String username, String password, String auth, String enctype) {
boolean result = false;
try {
Properties props = new Properties();
if (auth.equals(true)) {
props.setProperty("mail.smtp.auth", "true");
} else {
props.setProperty("mail.smtp.auth", "false");
}
if (enctype.endsWith("TLS")) {
props.setProperty("mail.smtp.starttls.enable", "true");
} else if (enctype.endsWith("SSL")) {
props.setProperty("mail.smtp.startssl.enable", "true");
}
Session session = Session.getInstance(props, null);
Transport transport = session.getTransport("smtp");
int portint = Integer.parseInt(port);
transport.connect(host, portint, username, password);
transport.close();
result = true;
} catch(AuthenticationFailedException e) {
Logging.addMsg(e.toString(), "SMTP: Authentication Failed", false, true);
} catch(MessagingException e) {
Logging.addMsg(e.toString(), "SMTP: Messaging Exception Occurred", false, true);
} catch (Exception e) {
Logging.addMsg(e.toString(), "SMTP: Unknown Exception", false, true);
}
return result;
}
을하고 Gmail이 아닌 다른 주소에 대해 작동하지 않습니다 - 항상 성공을 인쇄합니다. 왜 그런가? 내가 smtp.1and1.com 및 잘못된 자격 증명을 사용하여 여전히 성공을 인쇄하고 있습니다 – ntgCleaner
올바른 솔루션을 사용해 보았지만 정확한 데이터 (지금 해당 이메일 데이터 설정으로 이메일을 보내고 있습니다)를 얻었습니다. 535 잘못된 인증 데이터 이유가 무엇입니까? ? –