JavaMail API를 사용하여 사용 된 메일 서버가 활성 상태인지 확인하는 방법이 있습니까? 그렇지 않다면 Java 코드로 어떻게 할 수 있습니까?메일 서버가 Java로 작동하는지 테스트하는 방법은 무엇입니까?
도움을 주셔서 감사드립니다.
JavaMail API를 사용하여 사용 된 메일 서버가 활성 상태인지 확인하는 방법이 있습니까? 그렇지 않다면 Java 코드로 어떻게 할 수 있습니까?메일 서버가 Java로 작동하는지 테스트하는 방법은 무엇입니까?
도움을 주셔서 감사드립니다.
, 다음을 수행 할 수 클라이언트가 적절한 SMTP 서버에 연결되어 있으면 대개 살아 있음을 의미합니다.
JavaMail API에서 이메일을 보내고 성공적으로 전송되었는지 확인할 수 있습니다.
연결성의 관점에서, 당신은 단지 그것을 핑 (ping) 수 :
Session s = //a JavaMail session I got from somewhere
boolean isConnected = s.getTransport("smtp").isConnected();
메일이 경우 : 당신이 Session 인스턴스에 대한 참조를 가지고있는 경우에
이InetAddress host = InetAddress.getByName("mailserver");
System.out.println("host.isReachable(1000) = " + host.isReachable(1000));
그래, 첫 번째 해결책이 유일한 해결책인지 확인하십시오. 서버가 제대로 작동하기 위해 ping에 응답 할 필요가 없습니다. –
@DenisR. 서버가 ICMP 에코 요청을 무시할 수도 있습니다. – Icarus
정말 유일한 해결책은 아닙니다. SMTP 서버는 ICMP 에코 요청을 무시할 수 있지만 포트 25에 대한 TCP 연결은 무시하지 않습니다. –
"메일 서버가 활성 상태"를 정의하십시오. – pingw33n