Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-18336

camel-jbang: YAML DSL cannot find classes for local beans

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Information Provided
    • 3.18.0
    • 3.18.1, 3.19.0
    • camel-jbang
    • None
    • Camel 3.18, Java 11.

    • Unknown

    Description

      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:

      $ 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
      

      However, the Java route runs without errors:

      $ camel run HelloBean.java HelloRoute.javaJ
      

      Attachments

        1. camel-jbang-yaml-bean.tgz
          1 kB
          Darren Coleman

        Issue Links

          Activity

            People

              davsclaus Claus Ibsen
              djcoleman Darren Coleman
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: