您的位置:首页 > 运维架构 > Apache

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

2015-07-31 08:52 791 查看
严重: Servlet.service() for servlet [jsp] in context with path [/ZDY] threw exception [Unable to compile class for JSP:

An error occurred at line: [32] in the generated java file: [D:\apache-tomcat-7.0.52-x64\work\Catalina\localhost\ZDY\org\apache\jsp\Login_jsp.java]

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

Stacktrace:] with root cause

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

An error occurred at line: [32] in the generated java file: [D:\apache-tomcat-7.0.52-x64\work\Catalina\localhost\ZDY\org\apache\jsp\Login_jsp.java]

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

Stacktrace:

at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:103)

at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:366)

at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:468)

at org.apache.jasper.compiler.Compiler.compile(Compiler.java:378)

at org.apache.jasper.compiler.Compiler.compile(Compiler.java:353)

at org.apache.jasper.compiler.Compiler.compile(Compiler.java:340)

at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:657)

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:177)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)

at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2441)

at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2430)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

at java.lang.Thread.run(Thread.java:745)

--------------------------------------------------------------------------------------

华丽的分割线

意思是他不能够完成类的编绎,造成他的的原因是我没有正确配置我的vm,在这里我提前说一下我的这个项目在手动启动Tomcat的statup.bat文件的时候是没有任何问题的,出现问题的原因是我用eclipse中的Tomcat启动时出现的,从这里就可以看出确实是我的vm设置的不正确所造成的,经过的查找我发现我在编绎这个项目的时候我用的vm是1.4的(从这里可以查看【Window】->【Preferences】->【Java】->【Compiler】->【JDK Compliance level】->1.4)而在启动eclipse中的tomcat的时候他让tomcat用的vm是eclipse自身带的vm我的eclipse是5.5.1的从这里可以看出他应该是用的1.5的vm(从这里可以查看windows
-> preference ->AplicationServers-> tomcat -> JDK-> Tomcate JDK name )因此部题就水落石出了,我们只要么让这两个编绎器相同就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: