Classpath Element
Description
A <classpath> element defines a classloader chain based on the three classloader categories - PUBLIC, PROTECTED and PRIVATE. Typically a classloader chain will be constructed relative to a supplied anchor classloader. The anchor will be used as the parent to a PUBLIC classloader which in-turn is used as the parent for the creatio of a protected (or SPI) classloader. The protected classloader is used as the parent to the PRIVATE implemention classloader.
Nested Elements
public | Declaration of the collection of resource uris that collectively define the public classloader. The <public> element is optional and may contain 0..n nested <uri> elements. |
protected | Declaration of the collection of resource uris that collectively define the protected classloader which is itself defined using the public classloader as its parent. The <protected>element is optional and may contain 0..n nested <uri> elements. |
private | Declaration of the collection of resource uris that collectively define the private implementation classloader which is itself defined using the protected classloader as its parent. The <private>element is optional and may contain 0..n nested <uri> elements. |
Examples
<classpath> <public> <uri>artifact:jar:dpml/util/dpml-logging-api#SNAPSHOT</uri> </public> <protected> <uri>artifact:jar:dpml/metro/dpml-state-api#SNAPSHOT</uri> <uri>artifact:jar:dpml/util/dpml-job-api#SNAPSHOT</uri> <uri>artifact:jar:dpml/transit/dpml-transit-main#SNAPSHOT</uri> <uri>artifact:jar:dpml/metro/dpml-metro-component#SNAPSHOT</uri> <uri>artifact:jar:dpml/util/dpml-parameters-api#SNAPSHOT</uri> <uri>artifact:jar:dpml/util/dpml-configuration-api#SNAPSHOT</uri> <uri>artifact:jar:dpml/metro/dpml-metro-model#SNAPSHOT</uri> </protected> <private> <uri>artifact:jar:dpml/util/dpml-parameters-impl#SNAPSHOT</uri> <uri>artifact:jar:dpml/util/dpml-configuration-impl#SNAPSHOT</uri> <uri>artifact:jar:dpml/util/dpml-job-impl#SNAPSHOT</uri> <uri>artifact:jar:dpml/metro/dpml-state-impl#SNAPSHOT</uri> <uri>artifact:jar:dpml/depot/dpml-library#SNAPSHOT</uri> <uri>artifact:jar:dpml/metro/dpml-metro-runtime#SNAPSHOT</uri> <uri>artifact:jar:dpml/metro/dpml-metro-runtime#SNAPSHOT</uri> </private> </classpath>