Hello. The versions are the following :
Karaf 4.4.1 Camel 2.25.4 (so the same for camel-master, camel-zookeeper, and so on) The curator version that is linked to these versions is 2.12.0 : 113 │ Active │ 50 │ 2.12.0 │ Curator Client 114 │ Active │ 50 │ 2.12.0 │ Curator Framework 115 │ Active │ 50 │ 2.12.0 │ Curator Recipes 116 │ Active │ 50 │ 2.12.0 │ Curator Service Discovery And indeed, the missing package is not exported by any started bundle. What kind of workaround could you suggest ? My Camel Cluster Service is provided using a feature : <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <features xmlns="http://karaf.apache.org/xmlns/features/v1.6.0" name="my-test-26-karaf-s-master"> <repository>mvn:org.apache.camel.karaf/apache-camel/2.25.4/xml/features</repository> <feature name="my-test-26-karaf-s-master" description="Fifi-T26 :: Master" version="0.0.1.SNAPSHOT"> <details>Fifi-T26 :: Master Service</details> <feature version="2.25.4" prerequisite="true">camel-master</feature> <feature version="2.25.4" prerequisite="true">camel-zookeeper</feature> <bundle>mvn:my.tests/my-test-26-karaf-s-master/0.0.1-SNAPSHOT</bundle> <capability>osgi.service;objectClass=org.apache.camel.cluster.CamelClusterService);effective:=active</capability> </feature> </features> Should it be possible to add other bundles/features to provide the missing packages out of the current zookeeper ? Thanks. Regards. Le mar. 27 sept. 2022 à 10:27, Grzegorz Grzybek <gr.grzy...@gmail.com> a écrit : > > Hello > > wt., 27 wrz 2022 o 09:16 Ephemeris Lappis <ephemeris.lap...@gmail.com> > napisał(a): > > > Hello. > > > > I'm trying to port to Karaf some bundles that we run today on Red-Hat > > Fuse that provides a "master" component to handle concurrent > > consumers. > > > > Which version of Red Hat Fuse are you using? Version 6 has very > sensitive/advanced/complex curator and zookeeper integration, because some > classes are changed to "fix" the original OSGi problems in old version of > curator. > Upstream curator/zookeeper versions have (AFAIK) OSGi integration simply > inherited from older contributions and sometimes it may cause problems in > later versions - mostly related to Guava integration. > > > > > > I've configured a Camel Cluster Service based on the ZooKeeper > > implementation, exposed a service in a bundle, and then I reference > > this service in the bundle that provides routes using "master". > > > > Which Camel version, Which Zookeeper version? > > > > > > But I've an exception that seems to be related to an internal > > dependance of the ZooKeeper service : Caused by: > > java.lang.ClassNotFoundException: > > org.apache.curator.shaded.com.google.common.cache.CacheBuilder not > > found by curator-framework > > > > Which Curator version are you using? I've quickly checked versions between > 2.6.0 and 5.1.0, but all these simply import-package > com.google.common.cache - so they expect the package to come from Guava > instead of being shaded/private-packaged.. > > > > > > I don't understand exactly what this "curator framework" does, but > > something is probably missing in the camel-zookeeper feature. > > > > Curator is to Zookeeper like Guava was supposed to be > (integration/versioning problems aside) java.util collections. Kind of > higher-level library with "recipes" implemented on top of low-level > Zookeeper "primitives". > > > > > > Has someone used these components before, and experienced the same issues ? > > > > I've seen some kind of bug report about the bad OSGi integration of > > this framework, but no solution or at least workaround to make it > > work. > > > > If you share more details (versions, features you've installed, Karaf > version used), we can try establishing some workaround ;) > > > > Should I use another Camel Cluster implementation ? > > > > I can help with OSGi, not with Camel Clustering ;) > > kind regards > Grzegorz Grzybek > > > > > > Thanks for your help. > > > > Regards. > >