The method getJspApplicationContext(ServletContext) is undefined for the type JspFactory

|

HTTP Status 500 -


type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 22 in the generated java file
The method getJspApplicationContext(ServletContext) is undefined for the type JspFactory

Stacktrace:
        org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
        org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
        org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
        org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
        org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        netville.servlet.filter.EncodingFilter.doFilter(EncodingFilter.java:53)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.



servlet-api.jar의 버전이 안맞아 jsp파일을 컴파일 시키지 못해서
(또는 컴파일이 된곳을 찾지 못하여)
발생하는 에러인 듯하다.(정확히 아는 분이 계시면 말씀 바람.)
확인은 안해봤지만, Tomcat6이상에서만 나는 듯하다.

jdk 5.0을 C드라이브 루트 폴더에 다시 설치하고 컴퓨터 환경변수에서 JAVA_HOME을 변경된 경로로 수정하고, 이클립스의 Preferences ->java->installed JREs 에서 새로운 jdk의 경로로 location을 잡은 후 실행시키니 잘 돌아간다..

(필요없는 환경변수는 다 지웠다. 오로지 JAVA_HOME만 남겨둔채..
이클립스로 개발만 할 때에는 다른 환경변수는 필요치 않다.)

환경변수 설정할때 경로에 빈공간(Space)가 들어가면 문제가 발생할 수도 있다고 한다..
이전 JAVA_HOME의 경로는 'Program Files' 안에 있었는데,
그게 문제 인건지도 모르겠다.

* 잘못된 내용 태클 환영입니다.

이 글은 스프링노트에서 작성되었습니다.

And