Yes..i can also confirm that this doesn't work. But confused about the explanation provided in this mail chain. Is this planned to be fixed in the future releases?
On Fri, 6 Dec 2024, 12:48 pm Mikael Koskinen, <mijap...@gmail.com> wrote: > Hi, > > From my testing, this hasn't changed in the latest versions. Meaning > calling a kamelet from a kamelet doesn't work. > > Though Claus' comment make it sound that in theory it should be working so > maybe this requires just a small fix. > > tiistai 3. joulukuuta 2024 Rohan Emmanuel <rohan.emmanue...@gmail.com> > kirjoitti: > > @pasqualre congiusti: I came across this discussion thread and wanted to > > confirm if it's still possible to achieve this. > > > > @claus: Thanks for the reply. I tried that approach, but it didn't work > for > > me. I am on Camel 4.4.0. I get an error saying the Kamelot is not found, > > but I am able to invoke the kamelet individually from the route.yaml. If > I > > add the call of the second kamelet inside the first Kamelet, I get the > > error below. any pointers would be appreciated. > > > > snippet of route.yaml > > --- > > - kamelet: nonstop-logtwo?response_class_name=second > > - kamelet: nonstop-log?response_class_name=first > > --- > > snippet of 1st kamelet: > > --- > > - to: kamelet:nonstop-logtwo?response_class_name=abas > > --- > > > > Stack Trace below for reference : > > caused by: org.apache.camel.RuntimeCamelException: > > org.apache.camel.VetoCamelContextStartException: Failure creating route > > from template: nonstop-log > > at org.apache.camel.RuntimeCamelException.wrapRuntimeException > > (RuntimeCamelException.java:66) > > at org.apache.camel.support.service.BaseService.doFail > > (BaseService.java:407) > > at org.apache.camel.impl.engine.AbstractCamelContext.doFail > > (AbstractCamelContext.java:2990) > > at org.apache.camel.support.service.BaseService.fail > > (BaseService.java:336) > > at org.apache.camel.impl.engine.AbstractCamelContext.failOnStartup > > (AbstractCamelContext.java:3881) > > at org.apache.camel.impl.engine.AbstractCamelContext.init > > (AbstractCamelContext.java:2034) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:105) > > at org.apache.camel.impl.engine.AbstractCamelContext.start > > (AbstractCamelContext.java:2040) > > at org.apache.camel.impl.DefaultCamelContext.start > > (DefaultCamelContext.java:212) > > at org.apache.camel.main.Main.doStart (Main.java:142) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:113) > > at org.apache.camel.main.MainSupport.run (MainSupport.java:88) > > at org.apache.camel.main.MainCommandLineSupport.run > > (MainCommandLineSupport.java:229) > > at org.apache.camel.example.MyApplication.main > (MyApplication.java:30) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native > Method) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke > > (NativeMethodAccessorImpl.java:77) > > at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke > > (DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke (Method.java:568) > > at org.apache.camel.maven.RunMojo$1.run (RunMojo.java:392) > > at java.lang.Thread.run (Thread.java:842) > > Caused by: org.apache.camel.VetoCamelContextStartException: Failure > > creating route from template: nonstop-log > > at > > > > org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.onContextInitialized > > (KameletComponent.java:452) > > at org.apache.camel.impl.engine.AbstractCamelContext.doInit > > (AbstractCamelContext.java:2395) > > at org.apache.camel.support.service.BaseService.init > > (BaseService.java:78) > > at org.apache.camel.impl.engine.AbstractCamelContext.init > > (AbstractCamelContext.java:2021) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:105) > > at org.apache.camel.impl.engine.AbstractCamelContext.start > > (AbstractCamelContext.java:2040) > > at org.apache.camel.impl.DefaultCamelContext.start > > (DefaultCamelContext.java:212) > > at org.apache.camel.main.Main.doStart (Main.java:142) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:113) > > at org.apache.camel.main.MainSupport.run (MainSupport.java:88) > > at org.apache.camel.main.MainCommandLineSupport.run > > (MainCommandLineSupport.java:229) > > at org.apache.camel.example.MyApplication.main > (MyApplication.java:30) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native > Method) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke > > (NativeMethodAccessorImpl.java:77) > > at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke > > (DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke (Method.java:568) > > at org.apache.camel.maven.RunMojo$1.run (RunMojo.java:392) > > at java.lang.Thread.run (Thread.java:842) > > Caused by: org.apache.camel.component.kamelet.KameletNotFoundException: > > Kamelet with id nonstop-log not found in locations: classpath:/kamelets > > at > > > > org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.createRouteForEndpoint > > (KameletComponent.java:440) > > at > > > > org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.onContextInitialized > > (KameletComponent.java:449) > > at org.apache.camel.impl.engine.AbstractCamelContext.doInit > > (AbstractCamelContext.java:2395) > > at org.apache.camel.support.service.BaseService.init > > (BaseService.java:78) > > at org.apache.camel.impl.engine.AbstractCamelContext.init > > (AbstractCamelContext.java:2021) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:105) > > at org.apache.camel.impl.engine.AbstractCamelContext.start > > (AbstractCamelContext.java:2040) > > at org.apache.camel.impl.DefaultCamelContext.start > > (DefaultCamelContext.java:212) > > at org.apache.camel.main.Main.doStart (Main.java:142) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:113) > > at org.apache.camel.main.MainSupport.run (MainSupport.java:88) > > at org.apache.camel.main.MainCommandLineSupport.run > > (MainCommandLineSupport.java:229) > > at org.apache.camel.example.MyApplication.main > (MyApplication.java:30) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native > Method) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke > > (NativeMethodAccessorImpl.java:77) > > at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke > > (DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke (Method.java:568) > > at org.apache.camel.maven.RunMojo$1.run (RunMojo.java:392) > > at java.lang.Thread.run (Thread.java:842) > > Caused by: org.apache.camel.FailedToCreateRouteException: Failed to > create > > route nonstop-log-3 at: >>> To[kamelet://sink?routeId=nonstop-log-3] <<< > in > > route: Route(nonstop-log-3)[From[kamelet://source?routeId=nonstop-l... > > because of Failed to resolve endpoint: > kamelet://sink?routeId=nonstop-log-3 > > due to: Property with key [templateId] not found in properties from text: > > {{templateId}} > > at org.apache.camel.reifier.RouteReifier.doCreateRoute > > (RouteReifier.java:228) > > at org.apache.camel.reifier.RouteReifier.createRoute > > (RouteReifier.java:79) > > at org.apache.camel.impl.DefaultModelReifierFactory.createRoute > > (DefaultModelReifierFactory.java:49) > > at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions > > (DefaultCamelContext.java:728) > > at > > > > org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.createRouteForEndpoint > > (KameletComponent.java:435) > > at > > > > org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.onContextInitialized > > (KameletComponent.java:449) > > at org.apache.camel.impl.engine.AbstractCamelContext.doInit > > (AbstractCamelContext.java:2395) > > at org.apache.camel.support.service.BaseService.init > > (BaseService.java:78) > > at org.apache.camel.impl.engine.AbstractCamelContext.init > > (AbstractCamelContext.java:2021) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:105) > > at org.apache.camel.impl.engine.AbstractCamelContext.start > > (AbstractCamelContext.java:2040) > > at org.apache.camel.impl.DefaultCamelContext.start > > (DefaultCamelContext.java:212) > > at org.apache.camel.main.Main.doStart (Main.java:142) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:113) > > at org.apache.camel.main.MainSupport.run (MainSupport.java:88) > > at org.apache.camel.main.MainCommandLineSupport.run > > (MainCommandLineSupport.java:229) > > at org.apache.camel.example.MyApplication.main > (MyApplication.java:30) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native > Method) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke > > (NativeMethodAccessorImpl.java:77) > > at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke > > (DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke (Method.java:568) > > at org.apache.camel.maven.RunMojo$1.run (RunMojo.java:392) > > at java.lang.Thread.run (Thread.java:842) > > Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to > > resolve endpoint: kamelet://sink?routeId=nonstop-log-3 due to: Property > > with key [templateId] not found in properties from text: {{templateId}} > > at org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint > > (AbstractCamelContext.java:830) > > at org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint > > (AbstractCamelContext.java:730) > > at org.apache.camel.support.CamelContextHelper.resolveEndpoint > > (CamelContextHelper.java:123) > > at org.apache.camel.reifier.SendReifier.resolveEndpoint > > (SendReifier.java:47) > > at org.apache.camel.reifier.SendReifier.createProcessor > > (SendReifier.java:37) > > at org.apache.camel.reifier.ProcessorReifier.makeProcessor > > (ProcessorReifier.java:879) > > at org.apache.camel.reifier.ProcessorReifier.addRoutes > > (ProcessorReifier.java:619) > > at org.apache.camel.reifier.RouteReifier.doCreateRoute > > (RouteReifier.java:224) > > at org.apache.camel.reifier.RouteReifier.createRoute > > (RouteReifier.java:79) > > at org.apache.camel.impl.DefaultModelReifierFactory.createRoute > > (DefaultModelReifierFactory.java:49) > > at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions > > (DefaultCamelContext.java:728) > > at > > > > org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.createRouteForEndpoint > > (KameletComponent.java:435) > > at > > > > org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.onContextInitialized > > (KameletComponent.java:449) > > at org.apache.camel.impl.engine.AbstractCamelContext.doInit > > (AbstractCamelContext.java:2395) > > at org.apache.camel.support.service.BaseService.init > > (BaseService.java:78) > > at org.apache.camel.impl.engine.AbstractCamelContext.init > > (AbstractCamelContext.java:2021) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:105) > > at org.apache.camel.impl.engine.AbstractCamelContext.start > > (AbstractCamelContext.java:2040) > > at org.apache.camel.impl.DefaultCamelContext.start > > (DefaultCamelContext.java:212) > > at org.apache.camel.main.Main.doStart (Main.java:142) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:113) > > at org.apache.camel.main.MainSupport.run (MainSupport.java:88) > > at org.apache.camel.main.MainCommandLineSupport.run > > (MainCommandLineSupport.java:229) > > at org.apache.camel.example.MyApplication.main > (MyApplication.java:30) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native > Method) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke > > (NativeMethodAccessorImpl.java:77) > > at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke > > (DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke (Method.java:568) > > at org.apache.camel.maven.RunMojo$1.run (RunMojo.java:392) > > at java.lang.Thread.run (Thread.java:842) > > Caused by: java.lang.IllegalArgumentException: Property with key > > [templateId] not found in properties from text: {{templateId}} > > at > > > > org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.getPropertyValue > > (DefaultPropertiesParser.java:373) > > at > > > > org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.readProperty > > (DefaultPropertiesParser.java:232) > > at > > > > org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.doParseNested > > (DefaultPropertiesParser.java:169) > > at > > > > org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.parse > > (DefaultPropertiesParser.java:118) > > at > > org.apache.camel.component.properties.DefaultPropertiesParser.parseUri > > (DefaultPropertiesParser.java:70) > > at org.apache.camel.component.properties.PropertiesComponent.parseUri > > (PropertiesComponent.java:320) > > at org.apache.camel.component.properties.PropertiesComponent.parseUri > > (PropertiesComponent.java:171) > > at > > > > org.apache.camel.impl.engine.DefaultCamelContextExtension.resolvePropertyPlaceholders > > (DefaultCamelContextExtension.java:315) > > at > > > > org.apache.camel.impl.engine.AbstractCamelContext.resolvePropertyPlaceholders > > (AbstractCamelContext.java:1543) > > at org.apache.camel.component.kamelet.Kamelet.extractTemplateId > > (Kamelet.java:66) > > at org.apache.camel.component.kamelet.KameletComponent.createEndpoint > > (KameletComponent.java:107) > > at org.apache.camel.support.DefaultComponent.createEndpoint > > (DefaultComponent.java:170) > > at org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint > > (AbstractCamelContext.java:796) > > at org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint > > (AbstractCamelContext.java:730) > > at org.apache.camel.support.CamelContextHelper.resolveEndpoint > > (CamelContextHelper.java:123) > > at org.apache.camel.reifier.SendReifier.resolveEndpoint > > (SendReifier.java:47) > > at org.apache.camel.reifier.SendReifier.createProcessor > > (SendReifier.java:37) > > at org.apache.camel.reifier.ProcessorReifier.makeProcessor > > (ProcessorReifier.java:879) > > at org.apache.camel.reifier.ProcessorReifier.addRoutes > > (ProcessorReifier.java:619) > > at org.apache.camel.reifier.RouteReifier.doCreateRoute > > (RouteReifier.java:224) > > at org.apache.camel.reifier.RouteReifier.createRoute > > (RouteReifier.java:79) > > at org.apache.camel.impl.DefaultModelReifierFactory.createRoute > > (DefaultModelReifierFactory.java:49) > > at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions > > (DefaultCamelContext.java:728) > > at > > > > org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.createRouteForEndpoint > > (KameletComponent.java:435) > > at > > > > org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.onContextInitialized > > (KameletComponent.java:449) > > at org.apache.camel.impl.engine.AbstractCamelContext.doInit > > (AbstractCamelContext.java:2395) > > at org.apache.camel.support.service.BaseService.init > > (BaseService.java:78) > > at org.apache.camel.impl.engine.AbstractCamelContext.init > > (AbstractCamelContext.java:2021) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:105) > > at org.apache.camel.impl.engine.AbstractCamelContext.start > > (AbstractCamelContext.java:2040) > > at org.apache.camel.impl.DefaultCamelContext.start > > (DefaultCamelContext.java:212) > > at org.apache.camel.main.Main.doStart (Main.java:142) > > at org.apache.camel.support.service.BaseService.start > > (BaseService.java:113) > > at org.apache.camel.main.MainSupport.run (MainSupport.java:88) > > at org.apache.camel.main.MainCommandLineSupport.run > > (MainCommandLineSupport.java:229) > > at org.apache.camel.example.MyApplication.main > (MyApplication.java:30) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native > Method) > > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke > > (NativeMethodAccessorImpl.java:77) > > at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke > > (DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke (Method.java:568) > > at org.apache.camel.maven.RunMojo$1.run (RunMojo.java:392) > > at java.lang.Thread.run (Thread.java:842) > > [ERROR] ************************************* > > > > On Tue, Dec 3, 2024 at 9:38 PM Pasquale Congiusti < > > pasquale.congiu...@gmail.com> wrote: > > > >> Errata link: > >> https://lists.apache.org/thread/22bzj6ghxhjdffgv06zz2pcg9htz99mo > >> > >> On Tue, Dec 3, 2024 at 5:07 PM Pasquale Congiusti < > >> pasquale.congiu...@gmail.com> wrote: > >> > >> > Hello, > >> > this question pops up from time to time [1]. I recall that was > something > >> > not doable in the previous versions of Camel. However, I don't know if > >> this > >> > is no longer the case or which would be the mechanisms required to > >> > introduce such a recursiveness. Definitely it is good to know if this > is > >> > something we can do with the actual status of the art of the core. > >> > > >> > Regards, > >> > Pasquale. > >> > > >> > [1] https://lists.apache.org/list?users@camel.apache.org:2023-8 > >> > > >> > On Tue, Dec 3, 2024 at 4:41 PM Claus Ibsen <claus.ib...@gmail.com> > >> wrote: > >> > > >> >> Hi > >> >> > >> >> Its just like another component. You can pass parameters via uri etc > >> >> > >> >> to("kamelet:second?foo=blah&cid=1234") > >> >> > >> >> > >> >> > >> >> On Tue, Dec 3, 2024 at 4:26 PM Rohan Emmanuel < > >> rohan.emmanue...@gmail.com > >> >> > > >> >> wrote: > >> >> > >> >> > hi, > >> >> > is it possible to call another kamelet from a kamelet? > >> >> > i was looking to invoke my custom kamelet from my another kamelet. > is > >> >> this > >> >> > supported? how to pass properties from one kamelet to another? > >> >> > can anyone point me to the docs/examples? > >> >> > any help would be appreciated. > >> >> > > >> >> > -- > >> >> > Regards, > >> >> > Rohan Emmanuel > >> >> > > >> >> > >> >> > >> >> -- > >> >> Claus Ibsen > >> >> ----------------- > >> >> @davsclaus > >> >> Camel in Action 2: https://www.manning.com/ibsen2 > >> >> > >> > > >> > > > > > > -- > > Regards, > > Rohan Emmanuel > > >