https://issues.apache.org/bugzilla/show_bug.cgi?id=56613
Bug ID: 56613 Summary: JSP COMPILATION ERROR ON TOMCAT 6 & 7 with JDK VERSION 1.8.0_20-ea Product: Tomcat 7 Version: unspecified Hardware: PC Status: NEW Severity: normal Priority: P2 Component: Jasper Assignee: dev@tomcat.apache.org Reporter: shu.c...@oracle.com With Java 1.8.0_20-ea (http://jre.us.oracle.com/java/re/jdk/8u20/promoted/all/b15/bundles/windows-i586/jdk-8u20-ea-windows-i586.exe), we got a JSP compilation error as below. Tomcat 6 & 7 both have compilation error when trying to interpret the following code in JSP: str = str.replace("'", @ "\\'").replace("\"","\\\""); (str is a string here) . Below is the error message: SEVERE: Compilation error org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException at org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader.<init>(ClassFileRea der.java:342) at org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:206) at org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:163) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEn vironment.java:96) at org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve(Un resolvedReferenceBinding.java:49) at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType(BinaryT ypeBinding.java:131) at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor(Bin aryTypeBinding.java:903) at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getExactMethod(Bina ryTypeBinding.java:705) at org.eclipse.jdt.internal.compiler.lookup.Scope.findExactMethod(Scope.java:763) . at org.eclipse.jdt.internal.compiler.lookup.Scope.getMethod(Scope.java:2057) at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java :417) at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java :334) at org.eclipse.jdt.internal.compiler.ast.Assignment.resolveType(Assignment.java:1 84) at org.eclipse.jdt.internal.compiler.ast.Expression.resolve(Expression.java:906) at org.eclipse.jdt.internal.compiler.ast.Block.resolve(Block.java:101) at org.eclipse.jdt.internal.compiler.ast.IfStatement.resolve(IfStatement.java:233 ) at org.eclipse.jdt.internal.compiler.ast.Block.resolve(Block.java:101) at org.eclipse.jdt.internal.compiler.ast.IfStatement.resolve(IfStatement.java:233 ) at org.eclipse.jdt.internal.compiler.ast.Block.resolveUsing(Block.java:115) at org.eclipse.jdt.internal.compiler.ast.TryStatement.resolve(TryStatement.java:7 99) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStateme nts(AbstractMethodDeclaration.java:429) at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(Meth odDeclaration.java:196) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(Abstra ctMethodDeclaration.java:400) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration. java:1085) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration. java:1164) at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(Compi lationUnitDeclaration.java:366) at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:623) at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:392) at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:429) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:327) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314) at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592 ) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:326 ) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFi lterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChai n.java:206) at com.demantra.common.servlets.ServerStartupFilter.doFilter(ServerStartupFilter. java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFi lterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChai n.java:206) at com.demantra.common.utils.ParamEncodingFilter.doFilter(ParamEncodingFilter.jav a:29) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFi lterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChai n.java:206) at com.demantra.security.server.csrf.CSRFFilter.doFilter(CSRFFilter.java:138) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFi lterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChai n.java:206) at com.demantra.security.server.authorization.AuthorizationFilter.doFilter(Author izationFilter.java:115) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFi lterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChai n.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java :233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java :191) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.j ava:470) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:1 09) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:86 4) at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Htt p11AprProtocol.java:579) at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1665) at java.lang.Thread.run(Unknown Source) From this page (http://tomcat.apache.org/tomcat-6.0-doc/jasper-howto.html), we know that Tomcat6 is using Eclipse JDT Java compiler for the JSP compilation. . Please note: This JSP file can compile successfully with Java 7, and also JDK8u5. We got this error only on Java 1.8.0_20-ea -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org