오래전에 개발을 해서 오픈한 소스를 오랜 시간이 지나 로컬에서 구동을 하니 특정페이지에서 아래와 같은 오류가 발생합니다.


The XXX function must be used with a prefix when a default namespace is not specified jsp


Exception 이 발생한 페이지의 라인을 따라가 봐도 예전과 달라진것도 없고 또 오류가 발생할것도 없는데...


차이점이라고 한다면 소스를 구동한 Servlet Container의 버전차이 뿐.


이전에 개발부터 오픈한것은 Tomcat7.x였고 다시 재 구동했을때의 Tomcat버전은 6.0이었습니다.


그렇습니다. Tomcat7.x 스펙부터 Servlet 3.0을 지원합니다.


이전개발환경(jdk7, Tomcat7, Spring3.1.2)에서 개발한 것을 Tomcat6.0에서 구동하여 발생한 오류였습니다.


나도 모르게 Servlet3.0 스펙으로 개발된 코드가 추가된 모양입니다.


참고로 Tomcat7.0과 더불어 Glassfish 3.x, Jboss 6.x/7.x 도 Servlet3.0을 지원하는 컨테이너입니다.