Spring
[Spring] - JavaMailSender 라이브러리만으로는 발송 실패에 대한 처리를 할 수 없다.
dev_SiWoo
2022. 4. 14. 17:15
JavaMailSender 라이브러리는 라이브러리명에 걸맞게 발송 라이브러리이다.
발송대상은 메일 서버( smtp) 즉 javamail에 등록된 호스트 주소로 접속해서 그 서버에게 메일 좀 보내주는 역할만하고 끝나는 라이브러리이기 때문에 상대 메일서버에서 뭔가 오류가 발생되었다는 정보를 리턴받을 수는 없는 라이브러리이다.
즉 JavaMailSender에서 메일 발송이 성공되었다는 것은 나의 호스트주소로 메일 내용을 문제없이 전송했다는 것이지
이것이 받는 사람의 서버까지 정상적으로 도착했다는 뜻은 결코아니다.
그래서 메일 발송에 대한 실패 정보를 받고자 한다면 별도의 메일발송 시스템을 구축하고 메일서버와 도메인이 필요하다. 또한 발송하는 메일 서버와 발신자의 도메인이 같아야한다.
그렇게 해줘야만 메일함 꽉참, 수신 거부, 존재하지 않는 이메일 등의 메일 발송 실패 정보를 리턴받을 수 있는 것이다.