activemq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christopher L. Shannon (JIRA)" <>
Subject [jira] [Commented] (AMQ-6301) Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf
Date Thu, 30 Jun 2016 14:59:10 GMT


Christopher L. Shannon commented on AMQ-6301:

I did some more digging into this today to see what we would need to do to drop spring-dm
for our 5.14 release.  I think we need a couple of new versions.  First, xbean-spring needs
a new release that supports spring 4.x.  There is an open ticket here:

Second, looks like Camel 2.18 is going to drop the spring-dm dependency from spring-camel.
 So I think we will need to wait for that version of Camel  to be released to drop spring-dm
because spring-camel 2.17 has a dependency on Spring 3.x for spring-dm support.  In version
2.18 spring-dm support has been separated out so spring-camel will work with spring 4.x.

> Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf
> --------------------------------------------------------------------
>                 Key: AMQ-6301
>                 URL:
>             Project: ActiveMQ
>          Issue Type: Improvement
>          Components: OSGi/Karaf
>    Affects Versions: 5.13.0
>            Reporter: Seth Leger
>              Labels: patch
> Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf
> In commit 3a6d67e8f95320bea91b7c7106173c9b34773bc5, a test was fixed in issue AMQ-4727
by reusing the spring-dm OsgiBundleXmlApplicationContext class inside the ActiveMQServiceFactory
managed service factory.
> To satisfy the import packages for activemq-osgi, the 'spring-dm' Karaf feature was added
to the main 'activemq-client' feature.
> This is problematic because loading the 'spring-dm' Karaf feature enables the Spring
DM deployer. This deployer is unnecessary in environments that rely on Blueprint or CDI wiring
and it may unexpectedly activate Spring DM bundles in those environments. Because spring-dm
was compiled against older versions of Spring 3.0 and 3.1, it can also cause older versions
of Spring features to be loaded into the container.
> To avoid using the ‘spring-dm’ Karaf feature to provide the classes, I propose embedding
the spring-dm bundles inside activemq-osgi. Since they are only used as library code to provide
the BundleContext when parsing the BrokerService context, they can be embedded safely without
any dependency issues.
> This is the root cause of the following issue:

This message was sent by Atlassian JIRA

View raw message