[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[xmlblaster-devel] Opend new Branch 'plugin_classloader' in cvs
Hi,
today I opend a branch 'plugin_classloader' in the cvs-repository of
xmlBlaster.
The goal is to add a designated classloader(CL) to the plugin manager.
This CL shell be able to load classes and jars into the VM which are
neccessary to this plugin. This new/own classpath(CP) should be
independent of the regular CP.
Example - Try to load Xindice as persistence plugin:
Xindice is one possible implementation of a persistence layer, it's
instanciated by XMLDBPlugin which is located in the package:
org.xmlBlaster.engine.persistence.xmldb
the regular CP may look like (just an example):
/home/goetzger/java/xmlBlaster/lib/jacorb.jar
/home/goetzger/java/xmlBlaster/lib/xmlBlaster.jar
Now xmlBlaster want Xindice to find it's own ORB-implementation first so
the pluginmanager has to create a new plugin specific CL which has the
regular CP extended by a recursive scan through the filesystem beginning
at the path wich corresponds to the packagename of the plugin.
(Does this make any sense to you?)
So the XMLDB-Plugin is in
org.xmlBlaster.engine.persistence.xmldb
my $XMLBLASTER_HOME is /home/goetzger/java/xmlBlaster/
adding some lib-path I start with:
/home/goetzger/java/xmlBlaster/lib/org/xmlBlaster/engine/persistence/xmldb
<---- $XMLBLASTER_HOME ---> lib/<---- package of the plugin --->
and add all jars or classes which located under this path to my new
plugin CP.
Assuming the jars xindice.jar, xalan-2.0.1.jar, xmldb.jar and
openorb-1.2.0.jar are located in the path
/home/goetzger/java/xmlBlaster/lib/org/xmlBlaster/engine/persistence/xmldb/xindice
The newly created CP could look like this:
/home/goetzger/java/xmlBlaster/lib/org/xmlBlaster/engine/persistence/xmldb/xindice/xindice.jar
/home/goetzger/java/xmlBlaster/lib/org/xmlBlaster/engine/persistence/xmldb/xindice/xalan-2.0.1.jar
/home/goetzger/java/xmlBlaster/lib/org/xmlBlaster/engine/persistence/xmldb/xindice/xmldb.jar
/home/goetzger/java/xmlBlaster/lib/org/xmlBlaster/engine/persistence/xmldb/xindice/openorb-1.2.0.jar
/home/goetzger/java/xmlBlaster/lib/jacorb.jar
/home/goetzger/java/xmlBlaster/lib/xmlBlaster.jar
Comments welcome.
regards
and happy easter
Heinrich
--
http://www.xmlBlaster.org