You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by charles didonato <ch...@gmail.com> on 2023/11/06 20:53:35 UTC

TLD jar scanning at Tomcat Startup

Good Evening,
Tomcat 9.082 on Windows 11.
Tomcat runs as a Windows service.

When I start Tomcat and deploy my war file, it hangs at the following in
the Catalina Log:

06-Nov-2023 15:21:59.819 INFO [main]
org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned
for TLDs yet contained no TLDs. Enable debug logging for this logger for a
complete list of JARs that were scanned but no TLDs were found in them.
Skipping unneeded JARs during scanning can improve startup time and JSP
compilation time.

I see nothing in stderr or stdout

I have enabled the logging in logging.properties
# To see debug messages in TldLocationsCache, uncomment the following line:
org.apache.jasper.compiler.TldLocationsCache.level = FINE

I have also edited the default list of jars to scan as below:

# Default list of JAR files that should be scanned that overrides the
default
# jarsToSkip list above. This is typically used to include a specific JAR
that
# has been excluded by a broad file name pattern in the jarsToSkip list.
# The list of JARs to scan may be over-ridden at a Context level for
individual
# scan types by configuring a JarScanner with a nested JarScanFilter.
tomcat.util.scan.StandardJarScanFilter.jarsToScan=\
log4j-taglib*.jar,\
log4j-web*.jar,\
log4javascript*.jar,\
slf4j-taglib*.jar,\
jstl-1.2.jar,\
CKFinder-2.3.1.jar, \
sitemesh-2.4.2.jar, \
ckeditor-java-core-3.5.3.jar, \
spring-security-taglibs-4.0.3.RELEASE.jar

It is my understanding that the jarsToScan overrides the
jarsToSkip.
I believe I have no override in my app context war file.

I am not seeing the intended behavior of the jar scanning and the tomcat
server never deploys the single war file.
Eventually the server encounters an OOM state and crashes.
Am I configuring something incorrectly?
Thanks
Charlie D

Re: TLD jar scanning at Tomcat Startup

Posted by Mark Thomas <ma...@apache.org>.

On 06/11/2023 20:53, charles didonato wrote:
> Good Evening,
> Tomcat 9.082 on Windows 11.
> Tomcat runs as a Windows service.
> 
> When I start Tomcat and deploy my war file, it hangs at the following in
> the Catalina Log:
> 
> 06-Nov-2023 15:21:59.819 INFO [main]
> org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned
> for TLDs yet contained no TLDs. Enable debug logging for this logger for a
> complete list of JARs that were scanned but no TLDs were found in them.
> Skipping unneeded JARs during scanning can improve startup time and JSP
> compilation time.
> 
> I see nothing in stderr or stdout
> 
> I have enabled the logging in logging.properties
> # To see debug messages in TldLocationsCache, uncomment the following line:
> org.apache.jasper.compiler.TldLocationsCache.level = FINE
> 
> I have also edited the default list of jars to scan as below:
> 
> # Default list of JAR files that should be scanned that overrides the
> default
> # jarsToSkip list above. This is typically used to include a specific JAR
> that
> # has been excluded by a broad file name pattern in the jarsToSkip list.
> # The list of JARs to scan may be over-ridden at a Context level for
> individual
> # scan types by configuring a JarScanner with a nested JarScanFilter.
> tomcat.util.scan.StandardJarScanFilter.jarsToScan=\
> log4j-taglib*.jar,\
> log4j-web*.jar,\
> log4javascript*.jar,\
> slf4j-taglib*.jar,\
> jstl-1.2.jar,\
> CKFinder-2.3.1.jar, \
> sitemesh-2.4.2.jar, \
> ckeditor-java-core-3.5.3.jar, \
> spring-security-taglibs-4.0.3.RELEASE.jar
> 
> It is my understanding that the jarsToScan overrides the
> jarsToSkip.
> I believe I have no override in my app context war file.
> 
> I am not seeing the intended behavior of the jar scanning and the tomcat
> server never deploys the single war file.
> Eventually the server encounters an OOM state and crashes.
> Am I configuring something incorrectly?

I don't think the assumption that the issue is related to JAR scanning 
is correct. That is the last thing in the log file that worked. You need 
to be looking at whatever happens next that doesn't work.

A couple of things to try.

Take 3 three dumps ~5 seconds apart once the start-up appears to freeze.

Enable heap dumps on OOME and analyse them in your favourite profiler.

MARK

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