이라고 할게 사실 없다.
아니? 있다.
내가 맡은 메일 부분의 서버 생성 등을 깨달았기때문이다.
생전 처음 보는 apache james, thunderbird, mysql등의 사용법을 이제는 거의 익히긴했다.
처음에 메일 송수신이 어떻게 이루어지는지 전혀 감을 못 잡아서 이틀은 내내 구글링과 james 공식문서 읽으며 이해하기 smtp, imap, pop3가 뭔지 이해하기 밖에 못 했다.
주위에서는 이것저것 구현해나가는데 나만 하나도 못하고.. 흑흑
근데 찾아볼수록 내가 하는 짓이 맞나싶은 의문도 들더라. 왜냐면 할수록 자바 코딩이 아니라 그냥 서버 파는 행위에 더 가까운 것 같고 이거를 호스팅할때는 어떻게 사용해야할지 DB에 어떻게 가져와서 어떻게 사용해야할지 전혀 알 수 없었기에ㅜㅜ
어찌저찌 우여곡절 끝에 3일차 그냥 이해가 되던 안 되던 구현해보기로했고 결과는 성공적이었다. 내가 생성한 가상의 도메인, 유저끼리 메일 송수신이 가능했던 것.
메일을 열심히 보내고 썬더버드로 확인해보니
와버렸다! 되어버렸다!
진심이 담긴 본문까지 확인하고나니 마음이 좋아졌는데
문제는 imap에 로그인이 안된다는 것이었다.
굉장히 pop3는 잘만되는데 imap이 자꾸 안되서 화만나는데 인터넷에 james3에대한 정보가 외국어로 많아서 눈물을 흘리며 찾아보았다.
authentication are disabled라고하는데 도대체 뭐가 인증이 안되는거냐고.. 답답한 마음으로 imapserver.xml을 까서 뒤지는데 "plainAuthDisallowed"와 "plainAuthEnabled" 이 두 녀석이 굉장히 수상했다. 신들린 구글링으로 xml 파일 안 태그들 설명이 적혀있는 외국 공식문서를 발견하고 한국어로 번역시켜서 본 결과
찾았다. 범인. 니.
호다닥 false로 바꿔주니 로그인 성공
telnet으로도 메일이 확인 가능했다.
하하하하 성공 너무 좋고 DB도 derby에서 mysql, oracle로 다 바꿔서 실행되는걸 확인했고 이제 4일부터 다시 코드를 작성하면 되겠는데 중요한건 내가 erd로 짠 mail DB가 쓸모가 없다.
James는 JPA를 통해 알아서 테이블이 작성이 되기때문에 그냥 그걸로 쓰면된다... 이게 뭐야 뭐지