Bug 130145 - XSLTemplate.isModified() does not work with Tomcat 4.0
XSLTemplate.isModified() does not work with Tomcat 4.0
Product: Red Hat Web Application Framework
Classification: Retired
Component: other (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: ccm-bugs-list
Jon Orris
Depends On:
  Show dependency treegraph
Reported: 2004-08-17 10:29 EDT by Carsten Clasohm
Modified: 2007-04-18 13:10 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-07-12 05:10:07 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Carsten Clasohm 2004-08-17 10:30:00 EDT
Description of problem:
XSLTemplate.isModified() only supports URLs with protocol "file". With
Tomcat 4.0, ServletContext.getResource() returns a "jndi" URL for the
template, which causes isModified() to always return false. As a
result, XSL content is always read from the cache until the server is
restarted. This makes developing XSL extremely cumbersome.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Set waf.debug to "true", and start the server with Tomcat 4.0.
2. Load a Bebop page.
3. Modify one of the XSL files used on this page.
3. Reload the Bebop page.
Actual results:
The reloaded Bebop page looks exactly the same, changes in the XSL are

Expected results:
The XLS changes should be visible when the page is reloaded.

Additional info:
This does not happen with Resin, because its
ServletContext.getResource() returns "file" URLs.

I was unable to find a way to get a last modified date for JNDI URLs.
One fix would be for XSLTemplate.isModified() to always return "true"
for JNDI URLs. Since isModified() is only called when waf.debug is
set, the effect on performance can be neglected.
Comment 1 Carsten Clasohm 2006-07-12 05:10:07 EDT
Closing old tickets.

Note You need to log in before you can comment on or make changes to this bug.