Hey all --

I have this strange problem and I'm not sure if it is a cocoon problem or a tomcat problem. I'll try here first ;)

I am using Cocoon 2.1.5 running on Tomcat 5.5.4. When I need to update my running web application, I copy the new WAR file over the old WAR file, and tomcat proceeds to stop the running webapp, delete the old expanded WAR, expand the new one, and restart the application.

However, *sometimes* something goes wrong with compiling my XSPs when this happens. I will get java compilation exceptions (typically "unreachable catch block") when hitting some XSPs, and it will only go away after doing a full server shutdown and restart.

I believe this has to do with residual files in the tomcat work dir -- the transformed XSP java source and compiled class files go in there. When I restart the server, the entire work directory gets wiped out, which is probably why restarting the server helps. I don't believe this happens when tomcat just reloads the servlet.

I also can't understand why the transformed source of the XSP is different when it was transformed after the hot deploy vs. a server startup.

Maybe it should be tomcat's responsibility to clear the work dir when it reloads the context, or should cocoon clear the work dir on startup?

cheers,
-steve

Reply via email to