Mail Archive Home | architecture List | April 2004 Index
| <-- Date Index --> | <-- Thread Index --> |
Petr Hnetynka wrote:
Indeed, we need a mean to instantiate several versions of the same component in a JVM. We have started looking at this issue. More precisely, we try to determine how Rick Hall's Module Loader could be used to reach this goal. The fact is that a given component must be associated to several modules, so that it will be possible to change part of its interfaces and implementation classes.The instantiation of multiple versions of the same component in the same JVM is solved and implemented in SOFA (http://sofa.objectweb.org/index.phtml). The name clashes are solved via byte code manipulation using ASM.
Another way of achieving this (instances of different classes with the same name) is to play with Java2 classloader's hierarchy (e.g. as in MobiliTools mobile agent framework, see http://mobilitools.objectweb.org/MobiliTools/SMI/doc/SMI/UsersGuide/index.html#codebase). In short, it consists in having one distinct classloader for each (set of) component, and to use the classloader delegation mechanism introduced with Java2 so that those components can interact with each other or with the Fractal runtime (through some common interfaces or classes defined by a parent classloader, such as the system classloader or whichever).
I guess Rick Hall's Module Loader uses a similar approach. -- Bruno.
| <-- Date Index --> | <-- Thread Index --> |
Powered by MHonArc.
Copyright © 1999-2005, ObjectWeb Consortium | contact | webmaster.