2016-11-02 3 views
-2

나는 전에 JSP로 작성된 웹 응용 프로그램에서 일하고 있습니다. 모든 것이 잘 잘 작동했지만, 갑자기 (이클립스) 서버에서 프로젝트를 실행하려고하면, 나는 브라우저와 일식에 다음과 같은 두 가지 오류를 얻고있다 : 나는 브라우저를 새로 고침 할 때 내가 얻을사이의 오류 교대 JSP로 클래스를 컴파일 할 수 없습니다 & JSP에 대한 클래스를로드 할 수 없습니다

HTTP Status 500 - Unable to compile class for JSP 

type Exception report 

message Unable to compile class for JSP 

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 
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84) 
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328) 
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:409) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:288) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:267) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:255) 
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:293) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 

다른 오류.

HTTP Status 500 - Unable to load class for JSP 

type Exception report 

message Unable to load class for JSP 

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

exception 

org.apache.jasper.JasperException: Unable to load class for JSP 
    org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598) 
    org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:137) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:305) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 

root cause 

java.lang.ClassNotFoundException: org.apache.jsp.automation.actions.index_jsp 
    java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    java.security.AccessController.doPrivileged(Native Method) 
    java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:133) 
    org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:65) 
    org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:596) 
    org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:137) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:305) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 

내가 여러 번 읽은 이유는 tomcat이 올바른 jdk를 가리 키지 않았기 때문입니다. Java 1.7을 가리키고 있습니다. 1.8을 가리키면 The type java.lang.CharSequence cannot be resolved. It is indirectly referenced from required .class files 오류가 발생합니다.

코드가 이전 버전과 잘 작동했기 때문에 정확히 무슨 일이 일어 났는지 확신 할 수 없습니다. 과거에도이 오류가 발생했으며이를 해결하기 위해 프로젝트 등을 다시 가져 왔습니다. 이번에는 한 번씩 이런 일이 일어나는 것 같아서 정말 뿌리까지 내려 가고 싶습니다. 나는 그것이 내가 놓치고있는 약간의 구성이다라고 확신한다. 그러나 나는 무엇이 확실하지 않다.

+0

누군가 왜 그들이 downvoting하시기 바랍니다 설명 할 수 있습니까? – mahacoder

답변

0

먼저 톰캣 VS 자바 버전의 호환성을 위해이 페이지를 확인하십시오 당신이 바람둥이 8.x의 또는 7.x의 자바 7 또는 8 OK입니다를 사용하는 경우 http://tomcat.apache.org/whichversion.html

합니다. 가능한 경우 JDK8을 선택하십시오.

다음으로 이러한 종류의 문제를 피하려면 이클립스 프로젝트를 동일한 jdk (구성 설정 확인)로 구성하고 다시 컴파일하십시오.

관련 문제