안녕하세요. 코딩도치 입니다~
오늘은 제가 겪었던 error에 대해서 소개를 해드리려고 합니다!
Springframework를 이용해서 웹사이트를 하나 제작하고 있었는데요.
외부망(인터넷이 되는 환경)에서 개발을 진행하다가,
내부망(인터넷이 안 되는 환경)으로 세팅을 하여 개발을 진행해야 하는 상황이 있었습니다.
그래서 할당받은 내부 아이피로 컴퓨터를 세팅하고 소스를 실행하였더니, 다음과 같은 error가 발생하는 것입니다.
Connection timed out : connect
서버는 톰캣을 사용하였고, 위와 같은 에러가 나오긴 했지만 서버 자체는 실행이 잘 되었습니다.
하지만 웹사이트가 error 페이지를 표출하였습니다.
그동안의 경험을 미루어 보아 DB와의 connection에 문제가 있을 것이라고 생각하고 확인을 해보았습니다.
(물론, 소스상에 DB 접속 정보는 똑같이 내부망으로 변경 완료해놓은 상황입니다.)
그런데, sqldeveloper에서는 DB connection이 잘 이루어지는 것입니다.
DB Connection time out에 대한 많은 것들을 검색해보고,
방화벽, 서버 설정, DB설정 등 해볼 수 있는 것은 모두 해보았지만 해결할 수가 없었습니다.
무엇이 문제 일까 고민하면서, error로그를 다시 한번 차근차근 살펴보았습니다.
살펴보니 이상한 점을 발견하였습니다.
DB에 연결하면서 Connection timed out이 발생한 것이 아니라,
ajax-views.xml을 파싱 하는데 Conenction time out이 발생한 것입니다!
확인을 해보니 ajax-view.xml에서 외부 dtd를 이용하여 문서 타입을 정의하고 있었습니다.
인터넷이 안 되는 내부망에서는 해당 주소로 접근을 할 수가 없어 connection timed out이 발생했던 것이었습니다.
위와 같이 dtd부분을 주석처리해주고, baen에 namespace설정을 추가해 줌으로써 문제를 해결할 수 있었습니다.
항상 인터넷이 가능한 환경에서 작업을 해오다 보니,
생각지도 못한 부분에 인터넷의 의존성이 많이 있다는 것을 알 수 있었습니다.
저의 이러한 경험이 많은 분들에게 도움이 되었으면 좋겠습니다!
또한, 이번을 계기로 error 메시지를 꼼꼼히 보는 것이 중요하다는 것을 다시 한번 깨닫게 되었습니다.
여러분도 error 메시지를 차근차근 보신다면 문제를 금방 발견할 수 있을 것입니다.
감사합니다.
'에러 로그 > web' 카테고리의 다른 글
2. [Java, Spring, Tomcat] Faceted Project Problem (0) | 2019.12.09 |
---|