[jira] [Commented] (AMQ-6241) Installing camel-core in Karaf prevents activemq-camel from deploying successfully

2017-06-23 Thread Seth Leger (JIRA)

[ 
https://issues.apache.org/jira/browse/AMQ-6241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16061321#comment-16061321
 ] 

Seth Leger commented on AMQ-6241:
-

Hi [~cjruffy], have you tried upgrading to ActiveMQ 5.14? I recently upgraded 
our infrastructure to use ActiveMQ 5.14 (which included my fixes for AMQ-6301) 
and it was compatible inside Karaf 4.0.8 with Camel 2.18 and 2.19.

Also, you may need to look at what version of Karaf you are using, there were 
some major changes to the way that features are resolved and installed even 
within the point releases for 4.0. You might try 4.0.6 and higher if you can.

> Installing camel-core in Karaf prevents activemq-camel from deploying 
> successfully
> --
>
> Key: AMQ-6241
> URL: https://issues.apache.org/jira/browse/AMQ-6241
> Project: ActiveMQ
>  Issue Type: Bug
>  Components: activemq-camel
>Affects Versions: 5.13.2
> Environment: Karaf 4.0.3, Java 8
>Reporter: Ralf Steppacher
>Priority: Critical
>
> Installing {{activemq-camel}} into a virgin Karaf 4.0.3 instance works. If 
> {{camel-core}} gets installed before one attempts to install 
> {{activemq-camel}}, the latter fails:
> {noformat}
> $ ./karaf
> __ __  
>/ //_/ __ _/ __/
>   / ,<  / __ `/ ___/ __ `/ /_
>  / /| |/ /_/ / /  / /_/ / __/
> /_/ |_|\__,_/_/   \__,_/_/
>   Apache Karaf (4.0.3)
> Hit '' for a list of available commands
> and '[cmd] --help' for help on a specific command.
> Hit '' or type 'system:shutdown' or 'logout' to shutdown Karaf.
> karaf@root()> feature:repo-add activemq 5.13.2
> Adding feature url mvn:org.apache.activemq/activemq-karaf/5.13.2/xml/features
> karaf@root()> feature:repo-add camel 2.17.0
> Adding feature url mvn:org.apache.camel.karaf/apache-camel/2.17.0/xml/features
> karaf@root()> feature:install camel-core
> karaf@root()> feature:install activemq
> activemqactivemq-blueprint  activemq-broker 
> activemq-broker-noweb
> activemq-camel  activemq-client activemq-web-console
> karaf@root()> feature:install activemq-camel
> karaf@root()> bundle:list | grep -i activemq
> 59 | Active  |  80 | 5.13.2  | activemq-camel
> 60 | Failure |  80 | 5.13.2  | activemq-osgi
> karaf@root()>
> {noformat}
> Error in Karaf log:
> {noformat}
> 2016-04-11 17:25:25,093 | INFO  | nsole user karaf | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   | Adding features: 
> activemq-camel/[5.13.2,5.13.2]
> 2016-04-11 17:25:25,804 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   | Changes to perform:
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   Region: root
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   | Bundles to 
> install:
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.activemq/activemq-camel/5.13.2
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.activemq/activemq-osgi/5.13.2
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.camel/camel-blueprint/2.17.0
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.camel/camel-jms/2.17.0
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.camel/camel-spring/2.17.0
> 2016-04-11 17:25:25,806 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:commons-net/commons-net/3.3
> 2016-04-11 17:25:25,806 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:commons-pool/commons-pool/1.6
> 2016-04-11 17:25:25,806 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.commons/commons-pool2/2.4.2
> 2016-04-11 17:25:25,806 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.geronimo.specs/geronimo-j2ee-management_1.1_spec/1.0.1
> 2016-04-11 

[jira] [Commented] (AMQ-6301) Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf

2016-07-01 Thread Seth Leger (JIRA)

[ 
https://issues.apache.org/jira/browse/AMQ-6301?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15359540#comment-15359540
 ] 

Seth Leger commented on AMQ-6301:
-

Thanks for clarifying, I wasn't aware that Camel 2.17 required camel-spring. I 
totally agree with everything here. I wish it was easier but it's tough to line 
up dependencies sometimes. :)

> Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf
> 
>
> Key: AMQ-6301
> URL: https://issues.apache.org/jira/browse/AMQ-6301
> 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:
> http://karaf.922171.n3.nabble.com/Karaf-4-0-3-unable-to-start-bundle-activemq-osgi-5-13-0-td4044640.html



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


[jira] [Commented] (AMQ-6301) Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf

2016-07-01 Thread Seth Leger (JIRA)

[ 
https://issues.apache.org/jira/browse/AMQ-6301?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15358938#comment-15358938
 ] 

Seth Leger commented on AMQ-6301:
-

Hi Christopher, I just wanted to provide feedback that in our environment 
(Camel and ActiveMQ with only Blueprint inside Karaf) I don't think we have any 
dependency on camel-spring. If ActiveMQ removes its spring-dm dependency now, 
our environment would be free of spring-dm even though we also use Camel.

> Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf
> 
>
> Key: AMQ-6301
> URL: https://issues.apache.org/jira/browse/AMQ-6301
> 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:
> http://karaf.922171.n3.nabble.com/Karaf-4-0-3-unable-to-start-bundle-activemq-osgi-5-13-0-td4044640.html



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


[jira] [Commented] (AMQ-6241) Installing camel-core in Karaf prevents activemq-camel from deploying successfully

2016-06-27 Thread Seth Leger (JIRA)

[ 
https://issues.apache.org/jira/browse/AMQ-6241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15351179#comment-15351179
 ] 

Seth Leger commented on AMQ-6241:
-

Hi Ralf,

I believe that to resolve this, the AMQ guys will have to remove their 
dependency on spring-dm (which is in some ways incompatible with Spring 4.0 and 
higher). You could try my patch for AMQ-6301 and see if that solves the 
problem. However, I'm not sure that embedding spring-dm will fix compatibility 
with Camel 2.17 since it relies on Spring 4.1... I've only tested that patch 
with Camel 2.15 and 2.16 with Spring 4.0.

https://github.com/apache/activemq/pull/187

Please let me know if you have success with my patch! Thanks.

> Installing camel-core in Karaf prevents activemq-camel from deploying 
> successfully
> --
>
> Key: AMQ-6241
> URL: https://issues.apache.org/jira/browse/AMQ-6241
> Project: ActiveMQ
>  Issue Type: Bug
>  Components: activemq-camel
>Affects Versions: 5.13.2
> Environment: Karaf 4.0.3, Java 8
>Reporter: Ralf Steppacher
>Priority: Critical
>
> Installing {{activemq-camel}} into a virgin Karaf 4.0.3 instance works. If 
> {{camel-core}} gets installed before one attempts to install 
> {{activemq-camel}}, the latter fails:
> {noformat}
> $ ./karaf
> __ __  
>/ //_/ __ _/ __/
>   / ,<  / __ `/ ___/ __ `/ /_
>  / /| |/ /_/ / /  / /_/ / __/
> /_/ |_|\__,_/_/   \__,_/_/
>   Apache Karaf (4.0.3)
> Hit '' for a list of available commands
> and '[cmd] --help' for help on a specific command.
> Hit '' or type 'system:shutdown' or 'logout' to shutdown Karaf.
> karaf@root()> feature:repo-add activemq 5.13.2
> Adding feature url mvn:org.apache.activemq/activemq-karaf/5.13.2/xml/features
> karaf@root()> feature:repo-add camel 2.17.0
> Adding feature url mvn:org.apache.camel.karaf/apache-camel/2.17.0/xml/features
> karaf@root()> feature:install camel-core
> karaf@root()> feature:install activemq
> activemqactivemq-blueprint  activemq-broker 
> activemq-broker-noweb
> activemq-camel  activemq-client activemq-web-console
> karaf@root()> feature:install activemq-camel
> karaf@root()> bundle:list | grep -i activemq
> 59 | Active  |  80 | 5.13.2  | activemq-camel
> 60 | Failure |  80 | 5.13.2  | activemq-osgi
> karaf@root()>
> {noformat}
> Error in Karaf log:
> {noformat}
> 2016-04-11 17:25:25,093 | INFO  | nsole user karaf | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   | Adding features: 
> activemq-camel/[5.13.2,5.13.2]
> 2016-04-11 17:25:25,804 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   | Changes to perform:
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   Region: root
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   | Bundles to 
> install:
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.activemq/activemq-camel/5.13.2
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.activemq/activemq-osgi/5.13.2
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.camel/camel-blueprint/2.17.0
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.camel/camel-jms/2.17.0
> 2016-04-11 17:25:25,805 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.camel/camel-spring/2.17.0
> 2016-04-11 17:25:25,806 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:commons-net/commons-net/3.3
> 2016-04-11 17:25:25,806 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:commons-pool/commons-pool/1.6
> 2016-04-11 17:25:25,806 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> mvn:org.apache.commons/commons-pool2/2.4.2
> 2016-04-11 17:25:25,806 | INFO  | pool-41-thread-1 | FeaturesServiceImpl  
> | 9 - org.apache.karaf.features.core - 4.0.3 |   |   
> 

[jira] [Commented] (AMQ-5932) ActiveMQ-OSGI should not depend on spring-dm

2016-06-20 Thread Seth Leger (JIRA)

[ 
https://issues.apache.org/jira/browse/AMQ-5932?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15340146#comment-15340146
 ] 

Seth Leger commented on AMQ-5932:
-

Because spring-dm is only used as library code to provide the BundleContext 
when parsing the BrokerService context, it can be embedded inside the 
spring-osgi bundle without any dependency issues. I propose using the pull 
request in AMQ-6301 as a way to fix OSGi compatiblity with Spring 4.X in 
ActiveMQ 5.13 and 5.14 until the spring-dm dependency can be removed.

> ActiveMQ-OSGI should not depend on spring-dm
> 
>
> Key: AMQ-5932
> URL: https://issues.apache.org/jira/browse/AMQ-5932
> Project: ActiveMQ
>  Issue Type: New Feature
>  Components: OSGi/Karaf
>Affects Versions: 5.13.0
>Reporter: Charlie Mordant
> Fix For: 5.14.0
>
>
> Hi,
> Spring-dm is deprecated for a long time, also it has a strong dependency to 
> spring-3, so all newest spring 4 versions are difficult to use, and that is 
> blocker for some other frameworks (i.e. thinking about cxf, spring-data).
> Also amq 5.9 didn't depend on spring-dm so it should be possible to get rid 
> of this dep.
> Regards,
> Charlie



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


[jira] [Commented] (AMQ-6301) Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf

2016-05-25 Thread Seth Leger (JIRA)

[ 
https://issues.apache.org/jira/browse/AMQ-6301?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15300674#comment-15300674
 ] 

Seth Leger commented on AMQ-6301:
-

Embedding spring-dm in activemq-osgi 5.13.X (and merging forward to master) 
would fix the following version combinations which do not currently load 
because of the conflicts with the spring-dm feature:
* Spring 4.X + Camel 2.15 + ActiveMQ 5.13
* Spring 4.X + Camel 2.16 + ActiveMQ 5.13
* Spring 4.X + Camel 2.16 + ActiveMQ 5.14-SNAPSHOT

Another peripheral issue here is that Camel 2.17 has changed their Karaf 
feature definitions so that the camel-jms feature excludes Spring 4.0 and lower:

* 
https://github.com/apache/camel/blob/camel-2.17.x/platforms/karaf/features/src/main/resources/features.xml
* https://github.com/apache/camel/blob/camel-2.17.x/parent/pom.xml

{code:xml}
[4.1,5)
{code}

This further restricts the combinations of Spring 4.0, Camel, and ActiveMQ that 
are compatible within Karaf.

> Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf
> 
>
> Key: AMQ-6301
> URL: https://issues.apache.org/jira/browse/AMQ-6301
> 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:
> http://karaf.922171.n3.nabble.com/Karaf-4-0-3-unable-to-start-bundle-activemq-osgi-5-13-0-td4044640.html



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


[jira] [Commented] (AMQ-6301) Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf

2016-05-23 Thread Seth Leger (JIRA)

[ 
https://issues.apache.org/jira/browse/AMQ-6301?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15296339#comment-15296339
 ] 

Seth Leger commented on AMQ-6301:
-

Hi everyone, I just wanted to let you know that my primary motivation is to get 
ActiveMQ 5.13+ to load in a Karaf container where Spring 4+ is also present. 
Since the feature version ranges for Spring in the ActiveMQ features restrict 
Spring to [3.2,4), Spring 3.2 will be installed with ActiveMQ and it will 
satisfy the Spring dependencies of spring-dm.

I understand that this is a stopgap measure and that removing the spring-dm 
dependency would be a better solution (and would be required for full Spring 
4.X compatibility). I thought that embedding would be a not-too-invasive way to 
make ActiveMQ 5.13 compatible with containers where Spring 4 is in use.

> Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf
> 
>
> Key: AMQ-6301
> URL: https://issues.apache.org/jira/browse/AMQ-6301
> 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:
> http://karaf.922171.n3.nabble.com/Karaf-4-0-3-unable-to-start-bundle-activemq-osgi-5-13-0-td4044640.html



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


[jira] [Updated] (AMQ-6301) Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf

2016-05-22 Thread Seth Leger (JIRA)

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

Seth Leger updated AMQ-6301:

 Flags: Patch
Patch Info: Patch Available
Labels: patch  (was: )

> Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf
> 
>
> Key: AMQ-6301
> URL: https://issues.apache.org/jira/browse/AMQ-6301
> 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:
> http://karaf.922171.n3.nabble.com/Karaf-4-0-3-unable-to-start-bundle-activemq-osgi-5-13-0-td4044640.html



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


[jira] [Commented] (AMQ-6301) Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf

2016-05-22 Thread Seth Leger (JIRA)

[ 
https://issues.apache.org/jira/browse/AMQ-6301?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15295731#comment-15295731
 ] 

Seth Leger commented on AMQ-6301:
-

Embedding spring-dm should fix all of these other issues since they are 
fundamentally related to Spring version conflicts in Karaf.

> Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf
> 
>
> Key: AMQ-6301
> URL: https://issues.apache.org/jira/browse/AMQ-6301
> Project: ActiveMQ
>  Issue Type: Improvement
>  Components: OSGi/Karaf
>Affects Versions: 5.13.0
>Reporter: Seth Leger
>
> 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:
> http://karaf.922171.n3.nabble.com/Karaf-4-0-3-unable-to-start-bundle-activemq-osgi-5-13-0-td4044640.html



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


[jira] [Created] (AMQ-6301) Embed spring-dm in activemq-osgi to avoid loading spring-dm in Karaf

2016-05-22 Thread Seth Leger (JIRA)
Seth Leger created AMQ-6301:
---

 Summary: Embed spring-dm in activemq-osgi to avoid loading 
spring-dm in Karaf
 Key: AMQ-6301
 URL: https://issues.apache.org/jira/browse/AMQ-6301
 Project: ActiveMQ
  Issue Type: Improvement
  Components: OSGi/Karaf
Affects Versions: 5.13.0
Reporter: Seth Leger


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:

http://karaf.922171.n3.nabble.com/Karaf-4-0-3-unable-to-start-bundle-activemq-osgi-5-13-0-td4044640.html



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


[jira] [Updated] (AMQ-6298) Incorrect Import-Package version range for org.springframework.osgi

2016-05-20 Thread Seth Leger (JIRA)

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

Seth Leger updated AMQ-6298:

   Priority: Major  (was: Blocker)
Description: 
In issue AMQ-5922, I supplied a patch that updated the OSGi version range 
inside activemq-osgi for Spring to include Spring 4.X. Unfortunately, I 
reordered the "org.springframework*" clause and this is causing the version 
range for Spring and *Spring-DM* classes to be set to "[3,5)".

This is not a correct version range for Spring-DM since its releases only went 
from 1.0 to several 2.0 candidates.

  was:
In issue AMQ-5922, I supplied a patch that updated the OSGi version range 
inside activemq-osgi for Spring to include Spring 4.X. Unfortunately, I 
reordered the "org.springframework*" clause and this is causing the version 
range for Spring and *Spring-DM* classes to be set to "[3,5)".

This is not a correct version range for Spring-DM since its releases only went 
from 1.0 to several 2.0 candidates. As a result, when the activemq-osgi bundle 
loads inside Apache Karaf, its blueprint (which utilizes classes from the 
spring-dm bundle) fails to load.

The exception trace thrown when this happens is:
{noformat}
2016-05-19 18:44:05,952 | ERROR | pool-53-thread-1 | BlueprintContainerImpl 
  | 10 - org.apache.aries.blueprint.core - 1.6.1 | Unable to start 
blueprint container for bundle org.apache.activemq.activ
emq-osgi/5.13.3
org.osgi.service.blueprint.container.ComponentDefinitionException: Unable to 
instantiate components
at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:728)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:411)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:276)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:300)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:269)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:265)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:255)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[14:org.apache.aries.util:1.1.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[14:org.apache.aries.util:1.1.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[14:org.apache.aries.util:1.1.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[14:org.apache.aries.util:1.1.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[14:org.apache.aries.util:1.1.1]
at 
org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1179)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:731)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:486)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4541)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.Felix.startBundle(Felix.java:2172)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.karaf.features.internal.service.FeaturesServiceImpl.startBundle(FeaturesServiceImpl.java:1262)[7:org.apache.karaf.features.core:4.0.5]
at 
org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:840)[7:org.apache.karaf.features.core:4.0.5]
at 
org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1152)[7:org.apache.karaf.features.core:4.0.5]
at 
org.apache.karaf.features.internal.service.FeaturesServiceImpl$1.call(FeaturesServiceImpl.java:1048)[7:org.apache.karaf.features.core:4.0.5]
at 

[jira] [Created] (AMQ-6298) activemq-osgi blueprint fails to load due to broken spring-dm Import-Package metadata

2016-05-20 Thread Seth Leger (JIRA)
Seth Leger created AMQ-6298:
---

 Summary: activemq-osgi blueprint fails to load due to broken 
spring-dm Import-Package metadata
 Key: AMQ-6298
 URL: https://issues.apache.org/jira/browse/AMQ-6298
 Project: ActiveMQ
  Issue Type: Bug
  Components: OSGi/Karaf
Affects Versions: 5.13.3, 5.13.2, 5.13.1, 5.13.0
Reporter: Seth Leger
Priority: Blocker


In issue AMQ-5922, I supplied a patch that updated the OSGi version range 
inside activemq-osgi for Spring to include Spring 4.X. Unfortunately, I 
reordered the "org.springframework*" clause and this is causing the version 
range for Spring and *Spring-DM* classes to be set to "[3,5)".

This is not a correct version range for Spring-DM since its releases only went 
from 1.0 to several 2.0 candidates. As a result, when the activemq-osgi bundle 
loads inside Apache Karaf, its blueprint (which utilizes classes from the 
spring-dm bundle) fails to load.

The exception trace thrown when this happens is:
{noformat}
2016-05-19 18:44:05,952 | ERROR | pool-53-thread-1 | BlueprintContainerImpl 
  | 10 - org.apache.aries.blueprint.core - 1.6.1 | Unable to start 
blueprint container for bundle org.apache.activemq.activ
emq-osgi/5.13.3
org.osgi.service.blueprint.container.ComponentDefinitionException: Unable to 
instantiate components
at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:728)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:411)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:276)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:300)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:269)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:265)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:255)[10:org.apache.aries.blueprint.core:1.6.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[14:org.apache.aries.util:1.1.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[14:org.apache.aries.util:1.1.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[14:org.apache.aries.util:1.1.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[14:org.apache.aries.util:1.1.1]
at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[14:org.apache.aries.util:1.1.1]
at 
org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1179)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:731)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:486)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4541)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.Felix.startBundle(Felix.java:2172)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984)[org.apache.felix.framework-5.4.0.jar:]
at 
org.apache.karaf.features.internal.service.FeaturesServiceImpl.startBundle(FeaturesServiceImpl.java:1262)[7:org.apache.karaf.features.core:4.0.5]
at 
org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:840)[7:org.apache.karaf.features.core:4.0.5]
at 
org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1152)[7:org.apache.karaf.features.core:4.0.5]
at 
org.apache.karaf.features.internal.service.FeaturesServiceImpl$1.call(FeaturesServiceImpl.java:1048)[7:org.apache.karaf.features.core:4.0.5]
at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_60]
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_60]
 

[jira] [Created] (AMQ-5922) ActiveMQ OSGi metadata excludes compatibility with Spring 4.X

2015-08-06 Thread Seth Leger (JIRA)
Seth Leger created AMQ-5922:
---

 Summary: ActiveMQ OSGi metadata excludes compatibility with Spring 
4.X
 Key: AMQ-5922
 URL: https://issues.apache.org/jira/browse/AMQ-5922
 Project: ActiveMQ
  Issue Type: Bug
  Components: OSGi/Karaf
Affects Versions: 5.10.0
Reporter: Seth Leger
Priority: Critical


The OSGi metadata for ActiveMQ should be updated to include Spring 4.X in the 
version range. Despite the fact that Spring no longer includes OSGi metadata in 
their own 4.X packages, Apache Servicemix repackages Spring 4.X so that it can 
be used in OSGi containers like Apache Karaf.

This change is necessary in order for projects with Spring 4.X to coexist in 
the same Apache Karaf container where ActiveMQ is running as a bundle/Karaf 
feature.

This change has already been made in the activemq-camel submodule.

I've submitted the change as a pull request on the github mirror of ActiveMQ: 
https://github.com/apache/activemq/pull/121



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