@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