Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hello everyone,
Today, I'm reaching out to the community regarding a deployment issue on Karaf of a route using the camel-google-pubsub library.
For your information, I'm developing on version TOS 8.0.1.20211109_1610 and deploying on Talend Runtime (Karaf 3.11.1) provided with it.
My route is very simple, it consists of :
- Receiving a Google PubSub Message
- Displaying the message in console log
I have defined three contexts:
- work_pubsub_in_project: GCP project name
- work_pubsub_in_subscription: Google PubSub subscription name
- work_pubsub_in_serviceAccountKey: path to the service key
To receive the Google PubSub message, I'm using one component :
- A cMessaging Endpoint component with URI "google-pubsub://"+context.work_pubsub_in_project+":"+context.work_pubsub_in_subscription+"?serviceAccountKey=file:"+context.work_pubsub_in_serviceAccountKey
Finally, in the cConfig component, I've imported lots of libraries (see attached screenshots).
In the Studio, the route works without any issue.
But I can't deploy it on the Talend Runtime (Karaf) provided with the Studio.
I get this error during deployment (placing the kar file in the deploy folder after startup):
14:00:23.989 WARN [Delayed kar deployment] Unable to install Kar feature template_google_pubsub-feature/0.1.0 org.apache.felix.resolver.reason.ReasonException: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=template_google_pubsub-feature; type=karaf.feature; version="[0.1.0,0.1.0]"; filter:="(&(osgi.identity=template_google_pubsub-feature)(type=karaf.feature)(version>=0.1.0)(version<=0.1.0))" [caused by: Unable to resolve template_google_pubsub-feature/0.1.0: missing requirement [template_google_pubsub-feature/0.1.0] osgi.identity; osgi.identity=camel-google-pubsub; type=karaf.feature] at org.apache.felix.resolver.Candidates$MissingRequirementError.toException(Candidates.java:1343) ~[org.eclipse.osgi-3.13.300.jar:?] at org.apache.felix.resolver.ResolverImpl.doResolve(ResolverImpl.java:392) ~[org.eclipse.osgi-3.13.300.jar:?] at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:378) ~[org.eclipse.osgi-3.13.300.jar:?] at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:332) ~[org.eclipse.osgi-3.13.300.jar:?] at org.apache.karaf.features.internal.region.SubsystemResolver.resolve(SubsystemResolver.java:257) ~[?:?] at org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:401) ~[?:?] at org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1063) ~[?:?] at org.apache.karaf.features.internal.service.FeaturesServiceImpl.lambda$doProvisionInThread$13(FeaturesServiceImpl.java:998) ~[?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?] at java.lang.Thread.run(Thread.java:834) ~[?:?] Caused by: org.apache.felix.resolver.reason.ReasonException: Unable to resolve template_google_pubsub-feature/0.1.0: missing requirement [template_google_pubsub-feature/0.1.0] osgi.identity; osgi.identity=camel-google-pubsub; type=karaf.feature at org.apache.felix.resolver.Candidates$MissingRequirementError.toException(Candidates.java:1343) ~[org.eclipse.osgi-3.13.300.jar:?] ... 12 more
The route seems unable to resolve the camel-google-pubsub feature.
I've tried several fixes, including on the pom.xml file by manually adding dependencies but it doesn't work.
And I can't directly install the camel-google-pubsub feature on Karaf.
Do you have any suggestions for me?
I'm attaching the export of the route elements.
Thanks in advance and have a great day!
Best regards,