Reinhard already started the discussion on readding per sitemap classloading which I think is a good idea. I'll try to add the code over the weekend again.
But I think we should go one step further: Let's always use the paranoid class loader for the whole webapp. I started a discussion about this a long time ago and I think noone disagreed at that time (haven't searched in the archives). I hope this is still the case. Now, my idea is to solve all class path related problems (xml apis, rhino, commons-logging) with this. I suggest that we: a) move the paranoid class loader code (3 classes without additional dependencies) to the core-webapp block. It doesn't make sense to make this code an own block. b) Configure this as the default (I already did this and it worked on my machine - as it didn't work on Reinhards he commented it out. We have to find out what went wrong). c) Change the deployer tool to *not* put all jars in WEB-INF/lib and classes in WEB-INF/classes. I think we should only put the paranoid servlet and classloader class into WEB-INF/lib and everything else goes into a different directory to hide these classes from the usual application container classpath. It doesn't make sense to add all these jars to the webapp classpath although they are not used at all. So we put them into an own directory, let's they WEB-INF/cocoon-lib and the paranoid class loader loads everything from there. WDYT? Carsten -- Carsten Ziegeler - Open Source Group, S&N AG http://www.s-und-n.de http://www.osoco.org/weblogs/rael/