Uploaded image for project: 'Tuscany'
  1. Tuscany
  2. TUSCANY-3278

Cglib enhancer needs visibility into multiple classloaders in osgi environment

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • Java-SCA-1.5
    • Java-SCA-1.5.1
    • None
    • None

    Description

      When Tuscany 1.5.x is run in an osgi environment with separation between an application classloader and bundle loaders, CglibProxyFactory.createProxy() will fail with a NoClassDefFound error because the classloader for the business interface does not have access to CgLib and the classloader for CgLib does not have access to the business interface.

      A similar problem was discovered in the 2.x stream and fixed there (see org.apache.tuscany.sca.binding.rmi.provider.RMIServiceBindingProvider and org.apache.tuscany.sca.common.java.classloader.ClassLoaderDelegate.)

      I'm not aware of anywhere else in the 1.5.1 branch that needs this classloader function, so this probably doesn't require moving the entire ClassLoaderDelegate class and common module back to 1.5.1.

      Attachments

        Activity

          People

            bdaniel Brent Daniel
            bdaniel Brent Daniel
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment