Carsten Ziegeler wrote:
Hi,
I extracted our support for shielded classloading and added a patch
to the maven war plugin, see http://jira.codehaus.org/browse/MWAR-84.
As soon as this patch is accepted by the maven community (and hopefully
they will), shielded class loading is not the concern of Cocoon anymore
and we can remove this stuff from our own plugin.
To prepare this, I committed the code I used for the war plugin to our
deployer plugin - so we are now using a simplified version if the
classloading which does not depend on the bootstrap stuff anymore.
This has the advantage of removing the bootstrap module and move the
stuff into core again. I think we should move the basic class loading
support into core while moving the reloading stuff into a separate
module to keep the core dependencies as minimal as possible.
great!
One, to some extend, related question: Is it possible to have the
ReloadingClassloader in front of the ShieldingClassloader? Of course only at
development time.
My goal is having a completly self-reloading Cocoon application that also
includes the block dispatching mechanism and not only at sitemap level. (As a
side note: We shouldn't consider sub-sitemaps as the number one way of
modularization in Cocoon anymore).
How could this be implemented? I think a servlet filter that sets the context
classloader of the current thread to the reloading classloader that delegates to
the shielding classloader should do the trick. Additionally it must be able to
reload the app context if any .class file has changed.
The reloading classloader should be configureable so that it can put the
target/classes directories of other blocks onto the classpath. There should also
be some way to auto-generate this script.
For COB-INF resources we could create a Spring configuration file that points to
the src/main/resources/COB-INF directories of blocks, again based on the
configuration file mentioned before.
WDYT?
--
Reinhard Pötz Independent Consultant, Trainer & (IT)-Coach
{Software Engineering, Open Source, Web Applications, Apache Cocoon}
web(log): http://www.poetz.cc
--------------------------------------------------------------------
___________________________________________________________
Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de