Re: Camel Spring Boot unable to load routes from a jar file

2023-02-09 Thread Claus Ibsen
Hi

Are you sure about the versions as they are very old.

On Fri, Feb 10, 2023 at 3:21 AM Harnish Patel  wrote:

> Hey everyone,
>
> I have a spring boot app. in which I my routes defined in .yaml files
> under /resources/camel/ folder.
> Spring boot version: 2.1.18.RELEASE
> Camel version: 3.9.0
>
> I have the specified following spring boot property in bootstrap.yml:
> camel:
>   springboot:
> routes-include-pattern: classpath:camel/*.yaml
>
> This works fine and the routes get loaded successfully when I run this
> locally. Log output:
> 2023-02-09 17:28:42.796 DEBUG 34104 --- [   main]
> o.a.c.s.boot.SpringBootRoutesCollector   : Loading additional RoutesBuilder
> from: classpath:camel/*.yaml
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Getting resource URL for
> package: camel/ with classloader:
> jdk.internal.loader.ClassLoaders$AppClassLoader@4d7e1886
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : URL from classloader:
> file:/C:/source/connectors-core/target/classes/camel/
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Decoded urlPath:
> /C:/source/connectors-core/target/classes/camel/ with protocol: file
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Scanning for resources in:
> /C:/source/connectors-core/target/classes/camel/ matching pattern: *.yaml
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Loading from directory using
> file: C:\source\connectors-core\target\classes\camel
> 2023-02-09 17:28:42.798 DEBUG 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Found resource: route1.yaml
> matching pattern: *.yaml -> true
> 2023-02-09 17:28:42.801 TRACE 34104 --- [   main]
> .e.DefaultResourceResolvers$FileResolver : Creating resource:
> C:\source\connectors-core\target\classes\camel\route1.yaml from file system
> 2023-02-09 17:28:42.801 DEBUG 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Found resource: route2.yaml
> matching pattern: *.yaml -> true
> 2023-02-09 17:28:42.801 TRACE 34104 --- [   main]
> .e.DefaultResourceResolvers$FileResolver : Creating resource:
> C:\source\connectors-core\target\classes\camel\route2.yaml from file system
>
> But, it doesn't load these routes when deploying the app. as a jar file.
> Log output:
> Loading additional RoutesBuilder from: classpath:camel/*.yaml
> 16:46:52.490
> Getting resource URL for package: camel/ with classloader:
> org.springframework.boot.loader.LaunchedURLClassLoader@254989ff
> 16:46:52.490
> URL from classloader:
> jar:file:/opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.jar!/BOOT-INF/classes!/camel/
> 16:46:52.491
> Decoded urlPath:
> file:/opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.jar!/BOOT-INF/classes!/camel/
> with protocol: jar
> 16:46:52.491
> Scanning for resources in:
> /opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.jar
> matching pattern: *.yaml
> 16:46:52.491
> Loading from jar using file:
> /opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.jar
> 16:46:53.094
> No additional RoutesBuilder discovered from: classpath:camel/*.yaml
>
> If I specify the spring boot property to be a single file (route1.yaml),
> then the route is loaded fine. But specifying it as "*.yaml" doesn't work.
>
> Appreciate any pointers on how to resolve this issue.
>
> Thanks,
> Harnish Patel
>
>

-- 
Claus Ibsen
-
@davsclaus
Camel in Action 2: https://www.manning.com/ibsen2


RE: Camel Spring Boot unable to load routes from a jar file

2023-02-10 Thread Harnish Patel
Yes, they are old, but currently we are restricted to Spring Boot 
2.1.18.RELEASE (and Java 8) due to the internal platform version. We plan to 
upgrade Spring Boot later this year, but for now we have to go with this 
version.

-Original Message-
From: Claus Ibsen  
Sent: Friday, February 10, 2023 1:54 AM
To: users@camel.apache.org
Subject: Re: Camel Spring Boot unable to load routes from a jar file

EXTERNAL MESSAGE




Hi

Are you sure about the versions as they are very old.

On Fri, Feb 10, 2023 at 3:21 AM Harnish Patel  wrote:

> Hey everyone,
>
> I have a spring boot app. in which I my routes defined in .yaml files 
> under /resources/camel/ folder.
> Spring boot version: 2.1.18.RELEASE
> Camel version: 3.9.0
>
> I have the specified following spring boot property in bootstrap.yml:
> camel:
>   springboot:
> routes-include-pattern: classpath:camel/*.yaml
>
> This works fine and the routes get loaded successfully when I run this 
> locally. Log output:
> 2023-02-09 17:28:42.796 DEBUG 34104 --- [   main]
> o.a.c.s.boot.SpringBootRoutesCollector   : Loading additional RoutesBuilder
> from: classpath:camel/*.yaml
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Getting resource URL for
> package: camel/ with classloader:
> jdk.internal.loader.ClassLoaders$AppClassLoader@4d7e1886
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : URL from classloader:
> file:/C:/source/connectors-core/target/classes/camel/
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Decoded urlPath:
> /C:/source/connectors-core/target/classes/camel/ with protocol: file
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Scanning for resources in:
> /C:/source/connectors-core/target/classes/camel/ matching pattern: *.yaml
> 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Loading from directory 
> using
> file: C:\source\connectors-core\target\classes\camel
> 2023-02-09 17:28:42.798 DEBUG 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Found resource: route1.yaml 
> matching pattern: *.yaml -> true
> 2023-02-09 17:28:42.801 TRACE 34104 --- [   main]
> .e.DefaultResourceResolvers$FileResolver : Creating resource:
> C:\source\connectors-core\target\classes\camel\route1.yaml from file system
> 2023-02-09 17:28:42.801 DEBUG 34104 --- [   main]
> c.i.e.DefaultPackageScanResourceResolver : Found resource: route2.yaml 
> matching pattern: *.yaml -> true
> 2023-02-09 17:28:42.801 TRACE 34104 --- [   main]
> .e.DefaultResourceResolvers$FileResolver : Creating resource:
> C:\source\connectors-core\target\classes\camel\route2.yaml from file 
> system
>
> But, it doesn't load these routes when deploying the app. as a jar file.
> Log output:
> Loading additional RoutesBuilder from: classpath:camel/*.yaml
> 16:46:52.490
> Getting resource URL for package: camel/ with classloader:
> org.springframework.boot.loader.LaunchedURLClassLoader@254989ff
> 16:46:52.490
> URL from classloader:
> jar:file:/opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/work
> er.jar!/BOOT-INF/classes!/camel/
> 16:46:52.491
> Decoded urlPath:
> file:/opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.j
> ar!/BOOT-INF/classes!/camel/
> with protocol: jar
> 16:46:52.491
> Scanning for resources in:
> /opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.jar
> matching pattern: *.yaml
> 16:46:52.491
> Loading from jar using file:
> /opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.jar
> 16:46:53.094
> No additional RoutesBuilder discovered from: classpath:camel/*.yaml
>
> If I specify the spring boot property to be a single file 
> (route1.yaml), then the route is loaded fine. But specifying it as "*.yaml" 
> doesn't work.
>
> Appreciate any pointers on how to resolve this issue.
>
> Thanks,
> Harnish Patel
>
>

--
Claus Ibsen
-
@davsclaus
Camel in Action 2: https://www.manning.com/ibsen2


Re: Camel Spring Boot unable to load routes from a jar file

2023-02-10 Thread Claus Ibsen
Hi

We have fixed something about loading from within fatjar's of spring boot,
but that is very likely in newer Camel releases.
yaml-dsl is also evolving over that period so using an old 3.9 version with
yaml is not recommended.

I suggest to use Java DSL if you must use that old version. Also note that
Camel 3.14.x supports Java 8, so you could maybe try that release.
I am however not sure if Camel 3.14.x runs on SB 2.1.x


On Fri, Feb 10, 2023 at 4:22 PM Harnish Patel  wrote:

> Yes, they are old, but currently we are restricted to Spring Boot
> 2.1.18.RELEASE (and Java 8) due to the internal platform version. We plan
> to upgrade Spring Boot later this year, but for now we have to go with this
> version.
>
> -Original Message-
> From: Claus Ibsen 
> Sent: Friday, February 10, 2023 1:54 AM
> To: users@camel.apache.org
> Subject: Re: Camel Spring Boot unable to load routes from a jar file
>
> EXTERNAL MESSAGE
>
> 
> 
>
> Hi
>
> Are you sure about the versions as they are very old.
>
> On Fri, Feb 10, 2023 at 3:21 AM Harnish Patel 
> wrote:
>
> > Hey everyone,
> >
> > I have a spring boot app. in which I my routes defined in .yaml files
> > under /resources/camel/ folder.
> > Spring boot version: 2.1.18.RELEASE
> > Camel version: 3.9.0
> >
> > I have the specified following spring boot property in bootstrap.yml:
> > camel:
> >   springboot:
> > routes-include-pattern: classpath:camel/*.yaml
> >
> > This works fine and the routes get loaded successfully when I run this
> > locally. Log output:
> > 2023-02-09 17:28:42.796 DEBUG 34104 --- [   main]
> > o.a.c.s.boot.SpringBootRoutesCollector   : Loading additional
> RoutesBuilder
> > from: classpath:camel/*.yaml
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Getting resource URL for
> > package: camel/ with classloader:
> > jdk.internal.loader.ClassLoaders$AppClassLoader@4d7e1886
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : URL from classloader:
> > file:/C:/source/connectors-core/target/classes/camel/
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Decoded urlPath:
> > /C:/source/connectors-core/target/classes/camel/ with protocol: file
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Scanning for resources in:
> > /C:/source/connectors-core/target/classes/camel/ matching pattern: *.yaml
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Loading from directory
> > using
> > file: C:\source\connectors-core\target\classes\camel
> > 2023-02-09 17:28:42.798 DEBUG 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Found resource: route1.yaml
> > matching pattern: *.yaml -> true
> > 2023-02-09 17:28:42.801 TRACE 34104 --- [   main]
> > .e.DefaultResourceResolvers$FileResolver : Creating resource:
> > C:\source\connectors-core\target\classes\camel\route1.yaml from file
> system
> > 2023-02-09 17:28:42.801 DEBUG 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Found resource: route2.yaml
> > matching pattern: *.yaml -> true
> > 2023-02-09 17:28:42.801 TRACE 34104 --- [   main]
> > .e.DefaultResourceResolvers$FileResolver : Creating resource:
> > C:\source\connectors-core\target\classes\camel\route2.yaml from file
> > system
> >
> > But, it doesn't load these routes when deploying the app. as a jar file.
> > Log output:
> > Loading additional RoutesBuilder from: classpath:camel/*.yaml
> > 16:46:52.490
> > Getting resource URL for package: camel/ with classloader:
> > org.springframework.boot.loader.LaunchedURLClassLoader@254989ff
> > 16:46:52.490
> > URL from classloader:
> > jar:file:/opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/work
> > er.jar!/BOOT-INF/classes!/camel/
> > 16:46:52.491
> > Decoded urlPath:
> > file:/opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.j
> > ar!/BOOT-INF/classes!/camel/
> > with protocol: jar
> > 16:46:52.491
> > Scanning for resources in:
> > /opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.jar
> > matching pattern: *.yaml
> > 16:46:52.491
> > Loading from jar using file:
> > /opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker.jar
>

RE: Camel Spring Boot unable to load routes from a jar file

2023-02-13 Thread Harnish Patel
Thanks Claus! Appreciate your response. I will try out the 3.14.7 version as 
well.

-Original Message-
From: Claus Ibsen  
Sent: Saturday, February 11, 2023 2:30 AM
To: users@camel.apache.org
Subject: Re: Camel Spring Boot unable to load routes from a jar file

EXTERNAL MESSAGE




Hi

We have fixed something about loading from within fatjar's of spring boot, but 
that is very likely in newer Camel releases.
yaml-dsl is also evolving over that period so using an old 3.9 version with 
yaml is not recommended.

I suggest to use Java DSL if you must use that old version. Also note that 
Camel 3.14.x supports Java 8, so you could maybe try that release.
I am however not sure if Camel 3.14.x runs on SB 2.1.x


On Fri, Feb 10, 2023 at 4:22 PM Harnish Patel  wrote:

> Yes, they are old, but currently we are restricted to Spring Boot 
> 2.1.18.RELEASE (and Java 8) due to the internal platform version. We 
> plan to upgrade Spring Boot later this year, but for now we have to go 
> with this version.
>
> -Original Message-
> From: Claus Ibsen 
> Sent: Friday, February 10, 2023 1:54 AM
> To: users@camel.apache.org
> Subject: Re: Camel Spring Boot unable to load routes from a jar file
>
> EXTERNAL MESSAGE
>
> 
> 
>
> Hi
>
> Are you sure about the versions as they are very old.
>
> On Fri, Feb 10, 2023 at 3:21 AM Harnish Patel 
> wrote:
>
> > Hey everyone,
> >
> > I have a spring boot app. in which I my routes defined in .yaml 
> > files under /resources/camel/ folder.
> > Spring boot version: 2.1.18.RELEASE
> > Camel version: 3.9.0
> >
> > I have the specified following spring boot property in bootstrap.yml:
> > camel:
> >   springboot:
> > routes-include-pattern: classpath:camel/*.yaml
> >
> > This works fine and the routes get loaded successfully when I run 
> > this locally. Log output:
> > 2023-02-09 17:28:42.796 DEBUG 34104 --- [   main]
> > o.a.c.s.boot.SpringBootRoutesCollector   : Loading additional
> RoutesBuilder
> > from: classpath:camel/*.yaml
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Getting resource URL for
> > package: camel/ with classloader:
> > jdk.internal.loader.ClassLoaders$AppClassLoader@4d7e1886
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : URL from classloader:
> > file:/C:/source/connectors-core/target/classes/camel/
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Decoded urlPath:
> > /C:/source/connectors-core/target/classes/camel/ with protocol: file
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Scanning for resources in:
> > /C:/source/connectors-core/target/classes/camel/ matching pattern: *.yaml
> > 2023-02-09 17:28:42.797 TRACE 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Loading from directory 
> > using
> > file: C:\source\connectors-core\target\classes\camel
> > 2023-02-09 17:28:42.798 DEBUG 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Found resource: 
> > route1.yaml matching pattern: *.yaml -> true
> > 2023-02-09 17:28:42.801 TRACE 34104 --- [   main]
> > .e.DefaultResourceResolvers$FileResolver : Creating resource:
> > C:\source\connectors-core\target\classes\camel\route1.yaml from file
> system
> > 2023-02-09 17:28:42.801 DEBUG 34104 --- [   main]
> > c.i.e.DefaultPackageScanResourceResolver : Found resource: 
> > route2.yaml matching pattern: *.yaml -> true
> > 2023-02-09 17:28:42.801 TRACE 34104 --- [   main]
> > .e.DefaultResourceResolvers$FileResolver : Creating resource:
> > C:\source\connectors-core\target\classes\camel\route2.yaml from file 
> > system
> >
> > But, it doesn't load these routes when deploying the app. as a jar file.
> > Log output:
> > Loading additional RoutesBuilder from: classpath:camel/*.yaml
> > 16:46:52.490
> > Getting resource URL for package: camel/ with classloader:
> > org.springframework.boot.loader.LaunchedURLClassLoader@254989ff
> > 16:46:52.490
> > URL from classloader:
> > jar:file:/opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/wo
> > rk
> > er.jar!/BOOT-INF/classes!/camel/
> > 16:46:52.491
> > Decoded urlPath:
> > file:/opt/wf/vds-data/workers/app/c.w.c/connectors-core/1.0.0/worker
> >