[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