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