cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Maurizio Pillitu (JIRA)" <j...@apache.org>
Subject [jira] Created: (COCOON-1929) [PATCH] Reloading classloader in Cocoon 2.2
Date Fri, 06 Oct 2006 18:07:24 GMT
[PATCH] Reloading classloader in Cocoon 2.2
-------------------------------------------

                 Key: COCOON-1929
                 URL: http://issues.apache.org/jira/browse/COCOON-1929
             Project: Cocoon
          Issue Type: Task
          Components: * Cocoon Core
    Affects Versions: 2.2-dev (Current SVN)
            Reporter: Maurizio Pillitu


The attached patch provides a first implementation to enable reloading classloader configuration
into the sitemap, using the sitemap syntax used in blocks/cocoon-core-sample/cocoon-core-main-sample/src/main/resources/COB-INF/sitemap.xmap.

Referring to CocoonGT 2005 Torsten's code, I moved all the JCI listener configuration into
the ReloadingClassLoaderFactory class, that is in charge to parse the classloader configuration
(filled by AvalonUtils class) and instanciate all the JCI listeners.

The TreeProcessor component is subscribed to the JCI listeners, in order to reload the component
definitions when a file change event is triggered.

The patch provides also a sample : http://localhost:8888/blocks/cocoon-core-main-sample/reloading/
Try to change MyGenerator.java and compile it into blocks/cocoon-core-sample/cocoon-core-main-sample/target/classes
(default eclipse location); if you need to change the location of the .class folder, edit
the cocoon-core-main-sample sitemap.xmap.
core.

Obviously there are many parts of the code that can be optimized.

The patch has been applied on revision 453682.

NOTE!
1. I decided to provide the reloading class functionality only for dev mode, so, in order
to get it working, you need to run the cocoon application with -Dorg.apache.cocoon.mode=dev
2. The patch depends on a bugfix on Commons JCI (https://issues.apache.org/jira/browse/SANDBOX-174),
so it's necessary to build jci-core from trunk; the patch will update the cocoon-bootstrap
dependency to jci.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message