You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Rajini Sivaram (JIRA)" <tu...@ws.apache.org> on 2007/10/26 11:50:51 UTC

[jira] Updated: (TUSCANY-1871) Classloading : Application contribution classloaders

     [ https://issues.apache.org/jira/browse/TUSCANY-1871?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rajini Sivaram updated TUSCANY-1871:
------------------------------------

    Attachment: application-classloading-patch.txt

> Classloading : Application contribution classloaders
> ----------------------------------------------------
>
>                 Key: TUSCANY-1871
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1871
>             Project: Tuscany
>          Issue Type: Improvement
>          Components: Java SCA Core Runtime
>            Reporter: Rajini Sivaram
>         Attachments: application-classloading-patch.txt
>
>
> Details of the discussion on classloading changes for Tuscany are on the dev mailing list on this thread:
>     http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg24774.html
>    
> And on the WIKI
>    http://cwiki.apache.org/confluence/display/TUSCANYWIKI/Classloading+in+Tuscany+SCA+Java
> Changes in this patch introduce separate classloaders for each contribution.
> SCA contribution import/export spec cannot be implemented using a standard Java parent-child classloader delegation model. But SCA contribution import/export spec is a subset of OSGi package import/export (wiring of import/export is more complex in OSGi since it includes versions and other attributes). Hence an OSGi-style classloader is ideal for Tuscany to enforce SCA contribution spec. 
> Each contribution will have an associated classloader. This will be an subclass of URLClassLoader, and will have the Java application classloader based on CLASSPATH as its parent (the parent classloader will be obtained from the thread context). The defining classloader for any application class will be the classloader corresponding to the SCA contribution containing the class. ContributionClassLoader.findClass will search the contribution for the class, and if not found, it will search other classloaders of other contributions wired using SCA import/export. Like OSGi, an overlapping class space will be defined for each contribution which consists of the classes in the contribution and imported packages from other contributions. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org