|
Platform : Win2K
Tomcat ver: 4.1.18
Problem: When trying to start a
webapp that has been installed/deployed with jar files in
WEB-INF/lib
on a TC instance that was started by setting CATALINA_BASE (to get multi
instance support),
an exception is thrown by the method - ContextConfig.tldScanJar(). If the jar is
unpacked into
WEB-INF/classes the problem goes away. The problem also doesn't occur when
CATALINA_BASE is
equal to CATALINA_HOME i.e when webapp is deployed to the single instance
running out of
CATALINA_HOME.
To reproduce just deploy the examples
war file (created out of the /examples shipped with TC4.1.18 with the addition
of any jar into WEB-INF/lib) to any
server, in any dir by first setting
CATALINA_BASE to a different value than CATALINA_HOME. Looked at
the src thru the debugger and it
seems like ContextConfig.tldScanJar is trying to open a JarUrlConnection
by passing a weird looking url
(jar:jndi:/localhost/examples/WEB-INF/lib/commons-discovery.jar!*/)
that it is unable to resolve when CATALINA_BASE is set!!
Is there a way to turn of TLD scanner
other than modify code ? Seems like it will reduce startup cost
significantly
if TLD scan can be disabled when no
TLDs are present in the war.
Any workaround other than unjar'ing
the jar files in WEB-INF/classes ? I am looking at fixing
ContextConfig.java
but would be good to check with this
list if there are other solutions.
Basically this rules out using TC in
a multi-instance setting unless you are willing to unjar every WEB-INF/lib
jar!
_________________________________
Rahul Bhargava |
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
