I've encountered some very strange behavior in a new TC instance.  It's not actually 'new'.  I cloned an Amazon EC2 that had a fully functional ApacheHTTPD/Tomcat.  I replaced the domain on the clone with a new domain.  Otherwise, nothing was changed. I use JSTL extensively on both the original domain and the new domain.  When I brought up TC on the clone EC2 with the new domain, I got an error on the first jsp saying it couldn't resolve the jstl taglib reference.  I'm familiar with all of the google posts about this message.  But all of the responses I found said to make sure I had the 1.2 jstl taglib jars, etc.  I verified that the jars were there.  And I definitely had the right version.

After several hours, I remembered to check the JarsToSkip and JarsToScan properties in Catalina.properties.  I hadn't touched that file in months, and the clone EC2 was using the same version that was working on the original EC2.  In all of my TC instances, I use JarsToSkip=*, and I list out the specific jars with TLDs on JarsToScan.  When I removed the JarsToSkip, it took forever to boot as expected.  But this time it did find the jstl taglib jars and everything worked.  I then changed the JarsToSkip to the massive list of jars in my application that don't have tag definitions.  But when I listed the jars out, the loader ignored the list, and still processed the listed jars continually reminding me to add each one to the list to skip.

The skip/scan lists are working fine on all of the other TC installations I manage.  But they are not working on this one new installation.  I've tried several variations of the skip/scan configurations.  The only way it seems to work as expected is if the skip list is "*" or if there is no skip list at all.  Listing out individual jars in either list is being ignored.

This is on a 8.5.x.  I did a yum update.  So I assume it's close to the latest point release of 8.5.  Maybe I'll have a clearer mind tomorrow and see something obvious.  But right now, it's making no sense.  And the fact that it started failing with an untouched months-old Catalina.properties file that had been working is a real point of confusion.  Is there any additional debug info I can turn on that shows the skip/scan lists being processed?  I've already set org.apache.jasper.servlet.TldScanner.level = FINEST.  It's not showing anything other than listing the jars it scans and the results.  What could be happening to cause the jar scanner to act wonky?

Here's a subset of JarsToSkip from my Catalina.properties (they are NOT skipped)

tomcat.util.scan.StandardJarScanFilter.jarsToSkip=\
  annotations-api.jar,\
  ant-junit*.jar,\
  ant-launcher.jar,\
  ant.jar,\
  asm-*.jar,\
  aspectj*.jar,\
  bootstrap.jar,\
<<etc>>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to