You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Darren Coleman (Jira)" <ji...@apache.org> on 2022/08/02 14:51:00 UTC
[jira] [Created] (CAMEL-18336) camel-jbang: YAML DSL cannot find classes for local beans
Darren Coleman created CAMEL-18336:
--------------------------------------
Summary: camel-jbang: YAML DSL cannot find classes for local beans
Key: CAMEL-18336
URL: https://issues.apache.org/jira/browse/CAMEL-18336
Project: Camel
Issue Type: Bug
Components: camel-jbang
Affects Versions: 3.18.0
Environment: Camel 3.18, Java 11.
Reporter: Darren Coleman
Attachments: camel-jbang-yaml-bean.tgz
When running a YAML route using camel-jbang, it fails to find the class for a Java bean in the same directory. However, the equivalent route written in Java DSL runs the route without errors.
The attached tarball contains a simple bean and equivalent routes in Java and YAML.
To see the failures, run the YAML route:
{code:bash}
$ camel run HelloBean.java hello.yaml
java.lang.RuntimeException: java.lang.ClassNotFoundException: HelloBean
at org.apache.camel.dsl.yaml.deserializers.BeansDeserializer$1.configure(BeansDeserializer.java:67)
at org.apache.camel.dsl.yaml.common.YamlSupport$1.configure(YamlSupport.java:121)
at org.apache.camel.dsl.yaml.YamlRoutesBuilderLoader$1.doConfigure(YamlRoutesBuilderLoader.java:166)
at org.apache.camel.dsl.yaml.YamlRoutesBuilderLoader$1.configure(YamlRoutesBuilderLoader.java:140)
at org.apache.camel.builder.RouteBuilder.checkInitialized(RouteBuilder.java:672)
at org.apache.camel.builder.RouteBuilder.configureRoutes(RouteBuilder.java:618)
at org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:554)
at org.apache.camel.impl.engine.AbstractCamelContext.addRoutes(AbstractCamelContext.java:1178)
at org.apache.camel.main.RoutesConfigurer.addDiscoveredRoutes(RoutesConfigurer.java:237)
at org.apache.camel.main.RoutesConfigurer.configureRoutes(RoutesConfigurer.java:212)
at org.apache.camel.main.BaseMainSupport.configureRoutes(BaseMainSupport.java:582)
at org.apache.camel.main.BaseMainSupport.postProcessCamelContext(BaseMainSupport.java:637)
at org.apache.camel.main.MainSupport.initCamelContext(MainSupport.java:403)
at org.apache.camel.main.KameletMain.doInit(KameletMain.java:227)
at org.apache.camel.support.service.BaseService.init(BaseService.java:83)
at org.apache.camel.support.service.BaseService.start(BaseService.java:111)
at org.apache.camel.dsl.jbang.core.commands.Run.run(Run.java:560)
at org.apache.camel.dsl.jbang.core.commands.Run.call(Run.java:199)
at org.apache.camel.dsl.jbang.core.commands.Run.call(Run.java:72)
at picocli.CommandLine.executeUserObject(CommandLine.java:1953)
at picocli.CommandLine.access$1300(CommandLine.java:145)
at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2358)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2352)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2314)
at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
at picocli.CommandLine$RunLast.execute(CommandLine.java:2316)
at picocli.CommandLine.execute(CommandLine.java:2078)
at org.apache.camel.dsl.jbang.core.commands.CamelJBangMain.run(CamelJBangMain.java:51)
at main.CamelJBang.main(CamelJBang.java:37)
Caused by: java.lang.ClassNotFoundException: HelloBean
at org.apache.camel.impl.engine.DefaultClassResolver.resolveMandatoryClass(DefaultClassResolver.java:87)
at org.apache.camel.support.PropertyBindingSupport.resolveBean(PropertyBindingSupport.java:1519)
at org.apache.camel.dsl.yaml.deserializers.NamedBeanDefinition.newInstance(NamedBeanDefinition.java:64)
at org.apache.camel.dsl.yaml.deserializers.BeansDeserializer$1.configure(BeansDeserializer.java:65)
... 28 more
{code}
However, the Java route runs without errors:
{code:bash}
$ camel run HelloBean.java HelloRoute.javaJ
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)