geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bernd Fondermann <bf_...@brainlounge.de>
Subject Jasper TldLocationsCache initialization fails
Date Sun, 14 Aug 2005 14:17:37 GMT
Hello,

When requesting a JSP page of a geronimo-deployed WAR, I get the 
following exception:
org.apache.jasper.JasperException: Unable to initialize 
TldLocationsCache: $GERONIMO_HOME/config-store/17/lib1.jar

The webapp contains a META-INF/MANIFEST.MF file with a line like that:
     Class-Path: lib1.jar lib/lib2.jar

I debugged into Jasper2 and found the following:
* The critical code is in TldLocationsCache.scanJars(), called from init()
* This method is triggered at JSP compilation time, but only for pages 
containing <%@ taglib ... %> directives
* At first, the JettyClassLoader is doing its stuff
* Second, its parent, o.a.g.kernel.config.ConfigurationClassLoader takes 
  over
* TldLocationsCache iterates the 2 libs from the Manifest file as 
returned by ConfigurationClassLoader.getURLs()
* The URLs as returned by the CL are
    $GERONIMO_HOME/config-store/17/lib1.jar
    $GERONIMO_HOME/config-store/17/lib/lib2.jar
* But, the files are in fact stored under
    $GERONIMO_HOME/config-store/17/war/WEB-INF/lib1.jar
    $GERONIMO_HOME/config-store/17/war/WEB-INF/lib/lib2.jar
* This causes a FileNotFoundException which is wrapped into the 
JasperException
* If the config-store is manipulated (while running the server) to 
contain these two files at the requested location, everything works fine 
from then on
* Of course, the downside of this manipulation is, that deployment fails 
at next server startup

I wonder if this is a (known) bug with Geronimo's Classloader, or if 
there is something wrong with my webapp (which can be run in stand-alone 
Tomcat w/o any probs) or deployment?

I am running M4.

-- Bernd

Mime
View raw message