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.
> >

Reply via email to