..
jsp include 수정 후 반영이 안되는 경우
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

include 파일을 수정하면 include 한 파일 자체는 서비스에 반영되지만


include하고 있는 파일들은 반영이 안됨.


1) touch 하기

find ./ -name '*jsp' | xargs touch

touch *


단점 : 모든 파일의 수정일이 갱신..


2) jsp 컴파일된 클래스 파일 삭제


단점 : 모든 파일의 수정일이 갱신. 최초접속자 속도 느림.


3) was 컨테이너 재기동


단점 : 모든 파일의 수정일이 갱신. 최초접속자 속도 느림.



안녕하세요... 
저도 정확히 이 문제에 대해 아는거 아니지만 제가 보통 처리 하는 방식을 몇자 적어 보겠습니다. 

우선 이와 같은 현상이 일어나는건 jsp파일이 서비스 하기 위해 파일명.java파일로 변환되어 컴파일 되어 지는데 

이 컴파일 되는 시점이 jsp파일 내용이 변경이 안되었을시에 컴파일 안되고 기존의 파일내용을 참조 하는 경향이 있습니다. 

그래서 아무런 작업없이 새로 저장해서 파일저장시간을 최신으로 해주면 새로컴파일 되서 적용이 되기때문에 
따라서include파일 내용은 바뀌었지만 그것을 include하는 페이지에서 아무런 변경이 안되었기 때문에 새로 변경된 내용을 참조 하지 못하는 현상이 일어나는것 같습니다. 

이럴경우에 제가 쓰는 방법은 두가지 인데 첫번째는 

지 모냠님 질문처럼 기존에 컴파일된 파일을 삭제하는 것입니다 
전 제우스는 안써봐서 그 파일이 존재하는 위치가 정확히 어딘지는 잘모르겠는데 제우스 설치 루트에서 검색해 보시면 

weblogic의 경우에는 디렉토리나 파일명앞에 _ 가 붙어 시작되는 폴더가 있습니다 그곳에서 파일을 삭제해 주시면 되구여 tomcat은 works던가 기억이 잘안나네여... 

다 비슷비슷하니까 ?아 보시면 금방 ?으실수 있으실꺼에여 
그리고 제가 쓰는 다른 방법은 파일의 버젼시간을 최신 시간으로 변경해 줍니다.. 

unix나 linxu OS환경인 경우 touch *.* 명령어를 써주면 

파일들이 최신버젼처럼 변경되기때문에 다시 컴파일되서 제대로 서비스가 됩니다... 

nt환경이 아니시라면 후자쪽이 편하실꺼에여... 

굳이 was를 reboot하실 필요는 없으실꺼 같습니다... 

보통은 was를 reboot해도 이와같은 현상이 계속 일어나구여... 


정확한 답변은 아닙니다. 

참고하셔서 문제를 해결하시다 보면 더 멋진 방법을 발견 하실 수 있으실꺼에요... 

더 간단한 해결방법이 생기시면 모든 분께 공유 부탁드릴께여 그럼 좋은 하루 되세여...

  Comments,     Trackbacks