Hi, I have an application running under heavy load. While redeploying, some of my JSPs start throwing NoClassDefFoundError.
java.lang.NoClassDefFoundError: com/proj/tag/TagCloud at org.apache.jsp.WEB_002dINF.jsps_.detail_005fpages..Entity1Detail_jsp._jspService (Entity1Detail_jsp.java:1958) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java :94) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.jasper.servlet.JspServletWrapper.service( JspServletWrapper.java:324) at org.apache.jasper.servlet.JspServlet.serviceJspFile( JspServlet.java:292) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter( ApplicationFilterChain.java:157) at org.apache.catalina.core.ApplicationDispatcher.invoke( ApplicationDispatcher.java:704) at org.apache.catalina.core.ApplicationDispatcher.processRequest( ApplicationDispatcher.java:474) at org.apache.catalina.core.ApplicationDispatcher.doForward( ApplicationDispatcher.java:409) at org.apache.catalina.core.ApplicationDispatcher.forward( ApplicationDispatcher.java:312) at org.apache.struts.action.RequestProcessor.doForward( RequestProcessor.java:1063) at org.apache.struts.action.RequestProcessor.processForwardConfig( RequestProcessor.java:386) at org.apache.struts.action.RequestProcessor.process( RequestProcessor.java:229) at org.apache.struts.action.ActionServlet.process(ActionServlet.java :1194) at com.chalchitr.actions.servlet.ChalchitrServlet.process( ChalchitrServlet.java:48) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java :414) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter( ApplicationFilterChain.java:157) at org.apache.catalina.core.ApplicationDispatcher.invoke( ApplicationDispatcher.java:704) at org.apache.catalina.core.ApplicationDispatcher.processRequest( ApplicationDispatcher.java:474) at org.apache.catalina.core.ApplicationDispatcher.doForward( ApplicationDispatcher.java:409) at org.apache.catalina.core.ApplicationDispatcher.forward( ApplicationDispatcher.java:312) at org.tuckey.web.filters.urlrewrite.RewrittenUrl.doRewrite( RewrittenUrl.java:176) at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter( UrlRewriteFilter.java:728) The other jsps (Entity2Detail.jsp, Entity3Detail.jsp etc.) also use TagCloud class and they work fine. Infact all 3 jsps use TagCloud class in exactly the same fashion (<%@ include file="TagCloud.jsp" %>) . Also, the whole thing is highly unpredictable. On next restart, Entity2Detail.jsp would start giving this problem where as Entity1Detail.jspwould work fine. Some times all of them work fine. I suspect it has something to do with how jsps are compiled but can't figure out the exact problem. Also, if I delete my "work/Catalina" directory (forcing jasper to redo those jsps), that fixes the problem. Please help. Gaurav Singh http://www.chakpak.com