Tomcat background compilation fails with IllegalStateException
Issue
- We set the
checkInterval
in our web.xml for background compilation and see the following error:
SEVERE [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.core.ApplicationContext.log Background compile failed
java.lang.IllegalStateException: zip file closed
at java.util.zip.ZipFile.ensureOpen(ZipFile.java:686)
at java.util.zip.ZipFile.getEntry(ZipFile.java:315)
at java.util.jar.JarFile.getEntry(JarFile.java:240)
at org.apache.tomcat.util.scan.JarFileUrlJar.getLastModified(JarFileUrlJar.java:90)
at org.apache.jasper.JspCompilationContext.getLastModified(JspCompilationContext.java:373)
at org.apache.jasper.JspCompilationContext.getLastModified(JspCompilationContext.java:361)
at org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:431)
at org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:405)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:578)
at org.apache.jasper.compiler.JspRuntimeContext.checkCompile(JspRuntimeContext.java:363)
at org.apache.jasper.servlet.JspServlet.periodicEvent(JspServlet.java:371)
at org.apache.catalina.core.StandardWrapper.backgroundProcess(StandardWrapper.java:675)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1376)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1380)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1380)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1380)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1348)
at java.lang.Thread.run(Thread.java:748)
Environment
- JBoss Web Server (JWS) 3.x
- Tomcat 8.0.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.