I apologize for the duplicate post, but the previous post's title was truncated, making it too-easy-to-discard-as-ordinary.
I am using JBoss 3.2.5, and I have experimented extensively with the JSP Servlet settings in the jbossweb-tomcat50.sar/web.xml file.
For reasons I have not been able to determine, the pages we have built using Struts (1.1) and Tiles are always recompiling when a page loads (even if it was just loaded), when development is set to true and reload is set to true.
JSPs built that do not use Struts or Tiles do not exhibit this always-recompile behavior on the same server.
The only workaround we have been able to find is to set development to false and reload to true, and then specify a checkInterval of a "reasonable" 60 to 120 seconds. This, of course, sets off a recompilation cycle every time that number of seconds has transpired, gobbling huge amounts of CPU cycles and bringing our development systems to a temporary crawl.
One of our developers poked around until he found a surprising solution:
It turns out the "always recompile" problem goes away if the <taglib-location> in our web.xml file uses a WEB-INF folder that is upper case, instead of lower case.
<taglib> <taglib-uri>/struts-html</taglib-uri> <taglib-location>/WEB-INF/applications/struts/struts-html.tld</taglib-location> </taglib>
Should I still submit a bug report?
The case of the WEB-INF location is important. Presumably this is on a case insensitive platform like win32. Such a deployment on linux would likely just fail.