From whats been posted previously about this I'm still not really clear
exactly how things are going to work. Here's a couple of questions:

Are composites required to use the non-standard dependency element in the
SCDL? I'm hoping not and that there will be a way to get things working
without that

What does the classloader hierarchy look like for a complete system?  -
Could there be a couple of examples showing what classloaders exist, what
their parents area and what jars they hold for a system which has a couple
of extensions and and application composite? One thing i'm wondering about
here is how classes get shared, say there are two extensions using OMElement
then where do the AXIOM jars go?

I like being able to load all the dependencies into a WAR, for one thing I
think it makes it much more obvious whats going on when you can see all the
jars in the war. But, a war now ends up being quite complicated - there's
the classes dir, the lib dir, the tuscany/boot dir, tuscany/extensions, and
now also tuscany/repository with all its sub directories. Is there anyway
there could be a more simple setup? For example, tuscany/boot is really a
single flat directory for the Tuscany runtime jars, so could there be a
similar way for extensions to also use a single flat directory?

  ...ant

On 9/16/06, Meeraj Kunnumpurath (JIRA) <tuscany-dev@ws.apache.org> wrote:

    [
http://issues.apache.org/jira/browse/TUSCANY-727?page=comments#action_12435205]

Meeraj Kunnumpurath commented on TUSCANY-727:
---------------------------------------------

This is a rough outline for the proposed mechanism for handling
dependencies ....

1. Applications that use extensions should specify the extensions they use
in the tuscany maven war plugin using the
configuration/extensions/dependency(0..*) element.
2. The articat id, group id, version etc of the extension should be
specified.
3. The war plugin will include the artifacts for the specified extensions
in the WEB-INF/tuscany/exensions directory.
4. The application builder can optionally configure the WAR plugin to load
all the dependencies for the extensions transitively into the WAR file using
configuration/extensions/loadExtensionDependencies(0..1) element.
5. If this element is set to true the dependencies are loaded transitively
into WEB-INF/tuscany/repository directory in a structure similar to a maven
repo.
6. At runtime, if the composite contains a dependency element, the
artifact resolver will resolve it and its dependencies transitively from
WEB-INF/tuscany/repository directory.
7. If unable to do do, it will try the same using an injected local and
set of remote directories.
8. If it still fails, it throws a runtime error.


> Transitive Dependencies in Composites
> -------------------------------------
>
>                 Key: TUSCANY-727
>                 URL: http://issues.apache.org/jira/browse/TUSCANY-727
>             Project: Tuscany
>          Issue Type: New Feature
>          Components: Java SCA Core
>    Affects Versions: Java-M2
>            Reporter: Meeraj Kunnumpurath
>         Assigned To: Meeraj Kunnumpurath
>             Fix For: Java-M2
>
>
> Dependencies defined in composites need to be resolved transitively.
Currently artifact id specified in the SCDL is resolved non-transitively
from a local Maven repo (location injected) in, using custom code. We may be
able to leverage on the existing Maven artifact API. Also, we need to cater
for scenarios where a local Maven repository is not available in the
deployed environment.

--
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



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to