You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Christian Schneider (JIRA)" <ji...@apache.org> on 2015/06/03 15:38:38 UTC

[jira] [Created] (AMQ-5821) Activator can trigger unwanted behaviour when loading classes from other bundles

Christian Schneider created AMQ-5821:
----------------------------------------

             Summary: Activator can trigger unwanted behaviour when loading classes from other bundles
                 Key: AMQ-5821
                 URL: https://issues.apache.org/jira/browse/AMQ-5821
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
            Reporter: Christian Schneider


Currently org.apache.activemq.util.osgi.Activator watches all other bundles and tries to load some classes using their classloader to check if they might implement extensions. 

This can go wrong if the bundle uses dynamic imports like e.g. jline does. In this case the jline bundle is triggered to load classes from ActiveMQ. This establishes a wiring from jline to ActiveMQ. If the ActiveMQ bundle are now refreshed or uninstalled jline also has to be refreshed which triggers refreshs of a lot more bundles.

I propose to replace the class probing with checking of the bundle requirements. We simply check if the bundle has an import for the packages of the interface classes of ActiveMQ. So we avoid triggering classloading and the creation of unwanted wirings. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)