Hi tomcat team, Thanks for your continued support and help. I am facing the a peculiar problem in Tomcat 7.0.54.
Configurations: OS: RHEL Tomcat:7.0.54 Java:1.7.79 A jsp that was running properly gave the following exception after graceful tomcat restart ======== javax.servlet.ServletException: java.lang.ClassFormatError: Truncated class file at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:343) 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.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:486) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:411) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338) at org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:154) at org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186) at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:362) at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:266) ==== On checking the Tomcat work directory we discovered that the corresponding .java and .class files were of zero byte size. In other words these files were empty. This was the main reason why Tomcat gave truncated class error. Corresponding to this we also checked the disk utilization but it was at 54% only. So any possibility for disk space are ruled out. Also that the same jsp had not been modified and was running properly initially. so after reboot of tomcat what happen? why the jsp.java and jsp.class size is generated of 0 bytes. So my question is that what might have caused tomcat to generate empty *_jsp.java files in its work directory? Hope tomcat team will help us to finding root cause. Regards, Rahul Kumar singh