Post

JSP Include된 파일 수정 후 적용

#naver-import

원문: https://blog.naver.com/qoxmfaktmxj/223016420512

페이지 구성 시 공통으로 헤더 같이 쓰는 부분이 있다면

JSP Source 상

<%@ include file=“/WEB-INF/jsp/common/include/employeeHeader.jsp”%>

이렇게 추가를 해주게 되는데

해당 부분을 수정을 해도 적용이 안되는 경우가 있다.

Tomcat, Jeus 등 빌드할 때 jsp 파일들은 서비스를 하기 위해 파일명.java 파일로 변환되어 컴파일 되게 된다.

그런데

이 컴파일 되는 시점이 jsp파일 내용이 변경이 안되었을 때 컴파일 안되고 기존의 파일 내용을 참조할 때가 있다.

이는.. 또 서버마다 달라서.. 바로 반영될 때도 있는 반면 안될 때도 있다 ㅠㅠ…

include 하는 페이지를 저장하면 새로 컴파일 되서 적용이 되기 때문에 include되는 파일 내용은 바뀌게 되는데

그것을 include하는 페이지에서는 아무런 변경이 안되었기 때문에 새로 변경된 내용을 참조 하지 못하게 되는 경우이다.

이는 was를 reboot하는 경우가 있는데 was를 내렷다 올려도 아마 같은 현상이 일어날 것은 분명하다. (include를 하고 있는 jsp 파일은 변경이 일어나지 않아 수정시간 자체는 변경되지 않아서 인식을 하지 않기 때문)

이 때에는

변경한 파일을 include하는 jsp 파일의 버전 시간을 최신으로 변경해주거나 , 직접 해당 파일을 변경해주어야 한다.( 공백 추가 후 저장 혹은 include하는 파일명 일부러 바꿨다가 다시 바꾸거나 해서 재빌드를 통해 jsp-> .java로 컴파일 되게끔 해줘야 한다.)

해당부분이 공통으로 여러 곳에서 include되어 사용하게 되는 곳이면 수정하게 되면 적용이 안되니 매우 귀찮아 지게 된다.

댓글