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

[camel-jbang] Error when running openapi contract first with Q or SB

    XMLWordPrintableJSON

Details

    • Bug
    • Status: In Progress
    • Major
    • Resolution: Unresolved
    • 4.8.0
    • 4.8.1, 4.9.0
    • camel-jbang
    • None
    • Unknown

    Description

      Camel Jbang version:

      $ camel version
      JBang version: 0.119.0
      Camel JBang version: 4.8.0
      

      Camel Main OK:

      $ camel run petstore-v3.json petstore.camel.yaml --runtime main --camel-version 4.8.0
      2024-10-02 10:51:33.404  INFO 55540 --- [           main] org.apache.camel.main.MainSupport        : Apache Camel (JBang) 4.8.0 is starting
      2024-10-02 10:51:33.453  INFO 55540 --- [           main] org.apache.camel.main.MainSupport        : Additional files added to classpath: petstore-v3.json
      2024-10-02 10:51:33.586  INFO 55540 --- [           main] org.apache.camel.main.MainSupport        : Using Java 17.0.7 with PID 55540. Started by squake in /home/squake/Desktop/jbangdocker
      2024-10-02 10:51:33.767  INFO 55540 --- [           main] org.apache.camel.main.ProfileConfigurer  : The application is starting with profile: dev
      2024-10-02 10:51:34.131  INFO 55540 --- [           main] he.camel.cli.connector.LocalCliConnector : Camel JBang CLI enabled
      2024-10-02 10:51:35.408  INFO 55540 --- [           main] e.camel.impl.engine.AbstractCamelContext : Apache Camel 4.8.0 (petstore) is starting
      ...
      2024-10-02 10:51:36.290  INFO 55540 --- [           main] ponent.platform.http.main.MainHttpServer :     http://0.0.0.0:8080/api/v3/user/{username}            (DELETE,GET,PUT) (accept:application/json,application/x-www-form-urlencoded,application/xml produce:application/json,application/xml)
      

      Camel Quarkus KO:

      $ camel run petstore-v3.json petstore.camel.yaml --runtime quarkus --camel-version 4.8.0
      Running using Quarkus v3.14.2 (preparing and downloading files)
      Executing "/usr/lib/jvm/java-17-openjdk/bin/java -Dquarkus.platform.version=3.14.2 -Dquarkus.application.version=1.0-SNAPSHOT -Dquarkus.platform.artifact-id=quarkus-bom -Dquarkus.platform.group-id=io.quarkus.platform -Dquarkus.application.name=jbang-run-dummy -jar /home/squake/Desktop/jbangdocker/.camel-jbang-run/1727859109234/target/quarkus-app/quarkus-run.jar"
      __  ____  __  _____   ___  __ ____  ______ 
       --/ __ \/ / / / _ | / _ \/ //_/ / / / __/ 
       -/ /_/ / /_/ / __ |/ , _/ ,< / /_/ /\ \   
      --\___\_\____/_/ |_/_/|_/_/|_|\____/___/   
      2024-10-02 10:52:03,449 INFO  [org.apa.cam.qua.cor.CamelBootstrapRecorder] (main) Apache Camel Quarkus 3.14.0 is starting
      2024-10-02 10:52:03,455 INFO  [org.apa.cam.mai.MainSupport] (main) Apache Camel (Main) 4.7.0 is starting
      2024-10-02 10:52:03,525 INFO  [org.apa.cam.mai.BaseMainSupport] (main) Auto-configuration summary
      2024-10-02 10:52:03,525 INFO  [org.apa.cam.mai.BaseMainSupport] (main)     [MicroProfilePropertiesSource] camel.main.routesIncludePattern=camel/petstore.camel.yaml
      2024-10-02 10:52:03,586 INFO  [org.apa.cam.cli.con.LocalCliConnector] (main) Camel JBang CLI enabled
      2024-10-02 10:52:03,958 INFO  [org.apa.cam.imp.eng.AbstractCamelContext] (main) Apache Camel 4.7.0 (camel-1) is starting
      2024-10-02 10:52:04,355 ERROR [org.apa.cam.imp.eng.AbstractCamelContext] (main) Error starting CamelContext (camel-1) due to exception thrown: OpenAPI specification has 19 unmapped operations to corresponding routes: 
      	direct:addPet
      	direct:createUser
      	direct:createUsersWithListInput
      	direct:deleteOrder
      	direct:deletePet
      	direct:deleteUser
      	direct:findPetsByStatus
      	direct:findPetsByTags
      	direct:getInventory
      	direct:getOrderById
      	direct:getPetById
      	direct:getUserByName
      	direct:loginUser
      	direct:logoutUser
      	direct:placeOrder
      	direct:updatePet
      	direct:updatePetWithForm
      	direct:updateUser
      	direct:uploadFile: java.lang.IllegalArgumentException: OpenAPI specification has 19 unmapped operations to corresponding routes: 
      	direct:addPet
      	direct:createUser
      	direct:createUsersWithListInput
      	direct:deleteOrder
      	direct:deletePet
      	direct:deleteUser
      	direct:findPetsByStatus
      	direct:findPetsByTags
      	direct:getInventory
      	direct:getOrderById
      	direct:getPetById
      	direct:getUserByName
      	direct:loginUser
      	direct:logoutUser
      	direct:placeOrder
      	direct:updatePet
      	direct:updatePetWithForm
      	direct:updateUser
      	direct:uploadFile
      	at org.apache.camel.component.rest.openapi.DefaultRestOpenapiProcessorStrategy.validateOpenApi(DefaultRestOpenapiProcessorStrategy.java:103)
      	at org.apache.camel.component.rest.openapi.RestOpenApiProcessor.doInit(RestOpenApiProcessor.java:206)
      	at org.apache.camel.support.service.BaseService.init(BaseService.java:78)
      	at org.apache.camel.support.service.ServiceHelper.initService(ServiceHelper.java:84)
      	at org.apache.camel.support.service.ServiceHelper.initService(ServiceHelper.java:101)
      	at org.apache.camel.support.DefaultConsumer.doInit(DefaultConsumer.java:223)
      	at org.apache.camel.component.platform.http.DefaultPlatformHttpConsumer.doInit(DefaultPlatformHttpConsumer.java:69)
      	at org.apache.camel.support.service.BaseService.init(BaseService.java:78)
      	at org.apache.camel.support.service.BaseService.start(BaseService.java:105)
      	at org.apache.camel.support.service.ServiceHelper.startService(ServiceHelper.java:126)
      	at org.apache.camel.impl.engine.AbstractCamelContext.startService(AbstractCamelContext.java:3170)
      	at org.apache.camel.impl.engine.InternalRouteStartupManager.doStartOrResumeRouteConsumers(InternalRouteStartupManager.java:415)
      	at org.apache.camel.impl.engine.InternalRouteStartupManager.doStartRouteConsumers(InternalRouteStartupManager.java:331)
      	at org.apache.camel.impl.engine.InternalRouteStartupManager.safelyStartRouteServices(InternalRouteStartupManager.java:217)
      	at org.apache.camel.impl.engine.InternalRouteStartupManager.doStartOrResumeRoutes(InternalRouteStartupManager.java:129)
      	at org.apache.camel.impl.engine.AbstractCamelContext.doStartCamel(AbstractCamelContext.java:2855)
      	at org.apache.camel.impl.engine.AbstractCamelContext.doStartContext(AbstractCamelContext.java:2485)
      	at org.apache.camel.impl.engine.AbstractCamelContext.doStart(AbstractCamelContext.java:2440)
      	at org.apache.camel.support.service.BaseService.start(BaseService.java:113)
      	at org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamelContext.java:2043)
      	at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:211)
      	at org.apache.camel.quarkus.main.CamelMain.doStart(CamelMain.java:91)
      	at org.apache.camel.support.service.BaseService.start(BaseService.java:113)
      	at org.apache.camel.quarkus.main.CamelMain.startEngine(CamelMain.java:137)
      	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$boot173480958.deploy_0(Unknown Source)
      	at io.quarkus.deployment.steps.CamelBootstrapProcessor$boot173480958.deploy(Unknown Source)
      	at io.quarkus.runner.ApplicationImpl.doStart(Unknown Source)
      	at io.quarkus.runtime.Application.start(Application.java:101)
      	at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:119)
      	at io.quarkus.runtime.Quarkus.run(Quarkus.java:71)
      	at io.quarkus.runtime.Quarkus.run(Quarkus.java:44)
      	at io.quarkus.runtime.Quarkus.run(Quarkus.java:124)
      	at io.quarkus.runner.GeneratedMain.main(Unknown Source)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      	at io.quarkus.bootstrap.runner.QuarkusEntryPoint.doRun(QuarkusEntryPoint.java:62)
      	at io.quarkus.bootstrap.runner.QuarkusEntryPoint.main(QuarkusEntryPoint.java:33)
      

      Camel Spring Boot KO:

      $ camel run petstore-v3.json petstore.camel.yaml --runtime spring-boot
      Running using Spring Boot v3.3.3 (preparing and downloading files)
      ...
      2024-10-02T10:51:20.359+02:00  INFO 55262 --- [           main] o.e.p.jbangrundummy.CamelApplication     : Starting CamelApplication using Java 17.0.7 with PID 55262 (/home/squake/Desktop/jbangdocker/.camel-jbang-run/1727859072730/target/classes started by squake in /home/squake/Desktop/jbangdocker/.camel-jbang-run/1727859072730)
      2024-10-02T10:51:20.361+02:00  INFO 55262 --- [           main] o.e.p.jbangrundummy.CamelApplication     : No active profile set, falling back to 1 default profile: "default"
      2024-10-02T10:51:21.252+02:00  INFO 55262 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port 8080 (http)
      2024-10-02T10:51:21.261+02:00  INFO 55262 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
      2024-10-02T10:51:21.261+02:00  INFO 55262 --- [           main] o.apache.catalina.core.StandardEngine    : Starting Servlet engine: [Apache Tomcat/10.1.28]
      2024-10-02T10:51:21.309+02:00  INFO 55262 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
      2024-10-02T10:51:21.309+02:00  INFO 55262 --- [           main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 919 ms
      2024-10-02T10:51:21.758+02:00  INFO 55262 --- [           main] o.a.c.cli.connector.LocalCliConnector    : Camel JBang CLI enabled
      2024-10-02T10:51:22.042+02:00  INFO 55262 --- [           main] o.s.b.a.e.web.EndpointLinksResolver      : Exposing 1 endpoint beneath base path '/actuator'
      2024-10-02T10:51:22.109+02:00  INFO 55262 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port 8080 (http) with context path '/'
      2024-10-02T10:51:22.285+02:00  INFO 55262 --- [           main] o.a.c.s.o.OpenApiAutoConfiguration       : OpenAPI (3.0.2) created from Camel Rest-DSL
      2024-10-02T10:51:22.475+02:00  INFO 55262 --- [           main] o.a.c.impl.engine.AbstractCamelContext   : Apache Camel 4.8.0 (camel-1) is starting
      2024-10-02T10:51:22.531+02:00 ERROR 55262 --- [           main] o.a.c.impl.engine.AbstractCamelContext   : Error starting CamelContext (camel-1) due to exception thrown: Failed to start component platform-http because of PlatformHttpEngine is neither set on this endpoint neither found in Camel Registry or FactoryFinder.
      
      org.apache.camel.FailedToStartComponentException: Failed to start component platform-http because of PlatformHttpEngine is neither set on this endpoint neither found in Camel Registry or FactoryFinder.
      	at org.apache.camel.impl.engine.AbstractCamelContext.doStartCamel(AbstractCamelContext.java:2798)
      	at org.apache.camel.impl.engine.AbstractCamelContext.doStartContext(AbstractCamelContext.java:2524)
      	at org.apache.camel.impl.engine.AbstractCamelContext.doStart(AbstractCamelContext.java:2479)
      	at org.apache.camel.spring.boot.SpringBootCamelContext.doStart(SpringBootCamelContext.java:43)
      	at org.apache.camel.support.service.BaseService.start(BaseService.java:123)
      	at org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamelContext.java:2083)
      	at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:211)
      	at org.apache.camel.spring.SpringCamelContext.start(SpringCamelContext.java:121)
      	at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:153)
      	at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:185)
      	at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:178)
      	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:156)
      	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:452)
      	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:385)
      	at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:993)
      	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:628)
      	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
      	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754)
      	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456)
      	at org.springframework.boot.SpringApplication.run(SpringApplication.java:335)
      	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1363)
      	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1352)
      	at org.example.project.jbangrundummy.CamelApplication.main(CamelApplication.java:10)
      Caused by: java.lang.IllegalStateException: PlatformHttpEngine is neither set on this endpoint neither found in Camel Registry or FactoryFinder.
      	at org.apache.camel.component.platform.http.PlatformHttpComponent.lambda$getOrCreateEngine$2(PlatformHttpComponent.java:276)
      	at java.base/java.util.Optional.orElseThrow(Optional.java:403)
      	at org.apache.camel.component.platform.http.PlatformHttpComponent.getOrCreateEngine(PlatformHttpComponent.java:276)
      	at org.apache.camel.component.platform.http.PlatformHttpComponent.doStart(PlatformHttpComponent.java:173)
      	at org.apache.camel.support.service.BaseService.start(BaseService.java:123)
      	at org.apache.camel.support.service.ServiceHelper.startService(ServiceHelper.java:126)
      	at org.apache.camel.impl.engine.AbstractCamelContext.startService(AbstractCamelContext.java:3208)
      	at org.apache.camel.impl.engine.AbstractCamelContext.doStartCamel(AbstractCamelContext.java:2796)
      	... 22 common frames omitted
      
      2024-10-02T10:51:22.534+02:00  WARN 55262 --- [           main] o.a.c.s.boot.SpringBootCamelContext      : CamelContext has only been running for less than a second. If you intend to run Camel for a longer time then you can set the property camel.springboot.main-run-controller=true in application.properties or add spring-boot-starter-web JAR to the classpath.
      

      Attachments

        Activity

          People

            squakez Pasquale Congiusti
            squakez Pasquale Congiusti
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: