cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Royal <pro...@apache.org>
Subject ClassLoaderManager and its secret life as a static
Date Fri, 14 Feb 2003 17:30:12 GMT
Anyone know why ClassLoaderManagerImpl keeps its RepositoryClassLoader 
as an internal static variable? There's no history in CVS or the 
mailing lists to indicate and reasoning behind it.

The only usage of the "singleton" piece of it is in JavaLanguage, which 
takes a parameter named 'class-loader' and will use that as a class 
name to instantiate an object that implements ClassLoaderManager. Then 
in the compose method, it appends to look up the ClassLoaderManager 
component. Catch is, the compose() will never do that since the 
parameter has a default.

This is a real drag for anyone trying to safe space by not duplicating 
cocoon.jar in the WEB-INF/lib of individual webapps rather putting it 
higher up in the classloader. You can't have two of the same XSP pages 
in each webapp.

I am going to modify my local copy to accept a null parameter on 
JavaLanguage and create a new ClassLoaderManager impl that has no 
static internal instance. I am still very curious about the motivations 
that lead to the current implementation though.
-pete


-- 
peter royal -> proyal@apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org


Mime
View raw message