claudio4j opened a new issue #2444:
URL: https://github.com/apache/camel-k/issues/2444
To create a custom mongodb connection using MongoClient in a kamelet throws
a `ClassNotFoundException`
The MongoClient is created like:
```
MongoClient mongoClient =
MongoClients.create("mongodb://myuser:[email protected]:27017");
```
Setting the bean in a kamelet
```
flow:
beans:
- name: mongoDBConnection
type:
'#class:com.mongodb.client.MongoClients#create("mongodb://myuser:[email protected]:27017")'
```
Causes
```
2021-06-24 17:36:36,231 ERROR [org.apa.cam.qua.mai.CamelMainRuntime] (main)
Failed to start application: org.apache.camel.RuntimeCamelException:
org.apache.camel.VetoCamelContextStartException: Failure creating route from
template: mongodb-sink
at
org.apache.camel.RuntimeCamelException.wrapRuntimeException(RuntimeCamelException.java:66)
at
org.apache.camel.support.service.BaseService.doFail(BaseService.java:413)
at
org.apache.camel.impl.engine.AbstractCamelContext.doFail(AbstractCamelContext.java:3349)
at
org.apache.camel.support.service.BaseService.fail(BaseService.java:342)
at
org.apache.camel.impl.engine.AbstractCamelContext.failOnStartup(AbstractCamelContext.java:4846)
at
org.apache.camel.impl.engine.AbstractCamelContext.init(AbstractCamelContext.java:2487)
at
org.apache.camel.support.service.BaseService.start(BaseService.java:111)
at
org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamelContext.java:2494)
at org.apache.camel.quarkus.main.CamelMain.doStart(CamelMain.java:94)
at
org.apache.camel.support.service.BaseService.start(BaseService.java:119)
at
org.apache.camel.quarkus.main.CamelMain.startEngine(CamelMain.java:139)
at
org.apache.camel.quarkus.main.CamelMainRuntime.start(CamelMainRuntime.java:49)
at
org.apache.camel.quarkus.core.CamelBootstrapRecorder.start(CamelBootstrapRecorder.java:45)
at
io.quarkus.deployment.steps.CamelBootstrapProcessor$boot-173480958.deploy_0(CamelBootstrapProcessor$boot-173480958.zig:101)
at
io.quarkus.deployment.steps.CamelBootstrapProcessor$boot-173480958.deploy(CamelBootstrapProcessor$boot-173480958.zig:40)
at io.quarkus.runner.ApplicationImpl.doStart(ApplicationImpl.zig:722)
at io.quarkus.runtime.Application.start(Application.java:101)
at
io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:101)
at io.quarkus.runtime.Quarkus.run(Quarkus.java:66)
at io.quarkus.runtime.Quarkus.run(Quarkus.java:42)
at io.quarkus.runtime.Quarkus.run(Quarkus.java:119)
at io.quarkus.runner.GeneratedMain.main(GeneratedMain.zig:29)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at
io.quarkus.bootstrap.runner.QuarkusEntryPoint.doRun(QuarkusEntryPoint.java:48)
at
io.quarkus.bootstrap.runner.QuarkusEntryPoint.main(QuarkusEntryPoint.java:25)
Caused by: org.apache.camel.VetoCamelContextStartException: Failure creating
route from template: mongodb-sink
at
org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.onContextInitialized(KameletComponent.java:405)
at
org.apache.camel.impl.engine.AbstractCamelContext.doInit(AbstractCamelContext.java:2765)
at
org.apache.camel.quarkus.core.FastCamelContext.doInit(FastCamelContext.java:568)
at
org.apache.camel.support.service.BaseService.init(BaseService.java:83)
at
org.apache.camel.impl.engine.AbstractCamelContext.init(AbstractCamelContext.java:2475)
Caused by: java.lang.ClassNotFoundException:
com.mongodb.client.MongoClients#create("mongodb://myuser:[email protected]:27017")
at
org.apache.camel.quarkus.core.CamelQuarkusClassResolver.resolveMandatoryClass(CamelQuarkusClassResolver.java:59)
at
org.apache.camel.quarkus.core.BaseModel.addTemplateBeans(BaseModel.java:380)
at
org.apache.camel.quarkus.core.BaseModel.addRouteFromTemplate(BaseModel.java:300)
at
org.apache.camel.quarkus.core.BaseModel.addRouteFromTemplate(BaseModel.java:220)
at
org.apache.camel.quarkus.core.FastCamelContext.addRouteFromTemplate(FastCamelContext.java:235)
at
org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.createRouteForEndpoint(KameletComponent.java:387)
at
org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.onContextInitialized(KameletComponent.java:402)
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]