현재 프로젝트에서 TMAX 社 JEUS WAS로 사용하고 있다.
오늘 출근을 해보니 개발서버에서 아래와 같은 에러 메시지가 뜨면서 페이지가 열리지 않았다.
[2014.12.22 10:25:17][2][b242] [container1-55] [WEB-2207] [test] (jeus_jspwork._600_index_5fjsp) destroyed |
jsp의 컴파일 순서는 아래와 같다.
JSP → JAVA(Servlet) → Class |
[출처, 소설같은 자바]
그래서 JEUS의 jsp work directory를 삭제했다.
Servlet Class가 컴파일 되어 있으면 컴파일 안하고, 기존의 클래스를 로딩해서 수행할 것이다.
반대 경우에는 새로 컴파일 할 것이다.
내가 생각한 시나리오는 이거였다.
그런데, 계속 위와 같은 에러 메시지가 출력되는 것이었다. ㅠㅜ
혹시나 해서 UNIX 서버 타임이 잘못되었나 해서 shell에서 date를 날려보니 time 서버에서
현재 시간을 잘 가져오는거였다 ㅠㅜ
Servlet Class가 오래되면 현재시간이랑 비교해서 다시 컴파일 해줄텐데~
그것을 노렸는데 이것도 아니라니 ㅠㅜ 멘붕! 멘붕!!
하드디스크가 혹시 용량이 부족해서 그런가?
$ df -k $ du -sh |
정상적이다 ㅎㄷㄷ
WAS쪽에 코어 덤프도 안 떨어져있고~
개발용 테스트 라이센스 만료도 아닐테고 ㅠㅜ
멘붕 때리다가 설마 해서 보니까!!!!!!!!!!!!!
유레카~~!
index.jsp
파일시간이 2015-01-06 미래 시간이었다.
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
누가 나를 고생시킬려고 저런거 한거야 ㅠㅜ
서버 관리자 2015년도 테스트한건가?
그러니까 죽어도 jsp 컴파일 에러났지!
파일 지우고 현재 시간으로 다시 올려주니까!!
짜잔~ 해결!!
해결 순서 요약!
1. jsp work 디렉토리 삭제
2. Server 시간 확인
3. 하드디스크 용량 체크
4. WAS 코어 덤프 존재 여부 확인
5. JSP 파일 생성 시간 확인