You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Amit Gupta (JIRA)" <ji...@apache.org> on 2014/02/26 10:29:21 UTC

[jira] [Resolved] (SLING-3370) Bootdelegation support for third party library

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

Amit Gupta resolved SLING-3370.
-------------------------------

       Resolution: Fixed
    Fix Version/s: Launchpad Base 2.5.2

Completed: At revision: 1571975  

Applied with slight modification, external libraries can be put at ${sling.home}/ext, if ext does not exists it is not created by launchpad

> Bootdelegation support for third party library
> ----------------------------------------------
>
>                 Key: SLING-3370
>                 URL: https://issues.apache.org/jira/browse/SLING-3370
>             Project: Sling
>          Issue Type: Improvement
>          Components: Launchpad
>    Affects Versions: Launchpad Base 2.5.0
>            Reporter: Rohit Kumar
>            Assignee: Amit Gupta
>             Fix For: Launchpad Base 2.5.2
>
>         Attachments: SLING-3370_New.patch
>
>
> Requirement:
> 1) Bootdelegate third party library in SLing OSGI framework.
> 2) Bootdelegated classes and resources should be looked up from configured third party jars only. Similar classes from parent classloaders should not leak into system. This case arises usually in Web deployment scenario. 
> Infact we want to bootdelegate RSA library and at the same time prevent interference from parent classloaders in Web deployment model.
> Approach:
> 1) We extend SlingLauncherClassloader to scan a predefined path (say <launchpadhome>/lib/etx) for jar files and add them to its classpath. This is done at startup. SlingLauncherClassloader will  try to load class from its classpath before trying parent classloaders. Currently it is done for org.apache.sling.launchpad.base.jar.  
> 2) The packages can be configured for bootdelegation using sling properties:
> 	sling.bootdelegation.class.<any bootdelegated class>=<bootdelegated package>



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)