Re: Experimenting with Karaf 5
Hi Matteo, It sounds like a very interesting use case. Let me "push" K5 and merge the latest updates I did on the project. Thanks ! Regards JB On Fri, Apr 29, 2022 at 9:37 AM Matteo Rulli wrote: > > Thank you JB, > > I’ll set up a project in and I’ll open a PR as soon as it is (sort of ☺) > working. > > There are couple of things we usually use in our apps such as weaving hook + > byte-buddy and ConfigurationPlugins that will be interesting to test as well, > but let us do one step a time. > > Thank you very much, > Matteo > > > On 28 Apr 2022, at 19:21, Jean-Baptiste Onofré wrote: > > > > Hi Matteo, > > > > You have two approaches to implement what you propose: > > - Karaf 4 style deployed in Karaf5: K5 OSGi application manager will > > deploy the Karaf4 features service, and so you can use the same thing > > as in K4. You will see K4 distribution in K5 doing that. > > - Karaf 5 style, you implement your own K5 SPI > > - you use another approach like CDI, Spring Boot > > > > I'm going to push K5 as a branch on the main Karaf repo. Anyway, you > > can submit your example directly on https://github.com/jbonofre/karaf5 > > (in an example module for instance) > > > > If you want, we can have a chat together about that. > > > > Thanks for your help anyway ! > > > > Regards > > JB > > > > On Thu, Apr 28, 2022 at 6:59 PM Matteo Rulli wrote: > >> > >> Hello, > >> > >> I would like to start playing with Karaf5, waiting for the official RC... > >> With the final goal of migrating a few OSGi 3-tier projects (Hibernate, > >> Declarative Services, Apache CXF REST) to Karaf-5 my idea is: > >> - Put together a very trivial JPA+CXF project using "Karaf-JPA-example" > >> and "Karaf-rest-example" in Karaf's examples module > >> - Create a feature for the complete "demo application" > >> - Run this application in Karaf-5, deploying the application feature. > >> > >> The lesson learned will be used in the actual migration process. Before I > >> start working head-down on this, I would like your advice: is this > >> approach going to work with Karaf 5? Or is there any evident show-stopper > >> I should be aware? > >> > >> Many thanks for your help. > >> > >> Best regards, > >> Matteo >
Re: Experimenting with Karaf 5
Thank you JB, I’ll set up a project in and I’ll open a PR as soon as it is (sort of ☺) working. There are couple of things we usually use in our apps such as weaving hook + byte-buddy and ConfigurationPlugins that will be interesting to test as well, but let us do one step a time. Thank you very much, Matteo > On 28 Apr 2022, at 19:21, Jean-Baptiste Onofré wrote: > > Hi Matteo, > > You have two approaches to implement what you propose: > - Karaf 4 style deployed in Karaf5: K5 OSGi application manager will > deploy the Karaf4 features service, and so you can use the same thing > as in K4. You will see K4 distribution in K5 doing that. > - Karaf 5 style, you implement your own K5 SPI > - you use another approach like CDI, Spring Boot > > I'm going to push K5 as a branch on the main Karaf repo. Anyway, you > can submit your example directly on https://github.com/jbonofre/karaf5 > (in an example module for instance) > > If you want, we can have a chat together about that. > > Thanks for your help anyway ! > > Regards > JB > > On Thu, Apr 28, 2022 at 6:59 PM Matteo Rulli wrote: >> >> Hello, >> >> I would like to start playing with Karaf5, waiting for the official RC... >> With the final goal of migrating a few OSGi 3-tier projects (Hibernate, >> Declarative Services, Apache CXF REST) to Karaf-5 my idea is: >> - Put together a very trivial JPA+CXF project using "Karaf-JPA-example" and >> "Karaf-rest-example" in Karaf's examples module >> - Create a feature for the complete "demo application" >> - Run this application in Karaf-5, deploying the application feature. >> >> The lesson learned will be used in the actual migration process. Before I >> start working head-down on this, I would like your advice: is this approach >> going to work with Karaf 5? Or is there any evident show-stopper I should be >> aware? >> >> Many thanks for your help. >> >> Best regards, >> Matteo
Re: Experimenting with Karaf 5
Hi Matteo, You have two approaches to implement what you propose: - Karaf 4 style deployed in Karaf5: K5 OSGi application manager will deploy the Karaf4 features service, and so you can use the same thing as in K4. You will see K4 distribution in K5 doing that. - Karaf 5 style, you implement your own K5 SPI - you use another approach like CDI, Spring Boot I'm going to push K5 as a branch on the main Karaf repo. Anyway, you can submit your example directly on https://github.com/jbonofre/karaf5 (in an example module for instance) If you want, we can have a chat together about that. Thanks for your help anyway ! Regards JB On Thu, Apr 28, 2022 at 6:59 PM Matteo Rulli wrote: > > Hello, > > I would like to start playing with Karaf5, waiting for the official RC... > With the final goal of migrating a few OSGi 3-tier projects (Hibernate, > Declarative Services, Apache CXF REST) to Karaf-5 my idea is: > - Put together a very trivial JPA+CXF project using "Karaf-JPA-example" and > "Karaf-rest-example" in Karaf's examples module > - Create a feature for the complete "demo application" > - Run this application in Karaf-5, deploying the application feature. > > The lesson learned will be used in the actual migration process. Before I > start working head-down on this, I would like your advice: is this approach > going to work with Karaf 5? Or is there any evident show-stopper I should be > aware? > > Many thanks for your help. > > Best regards, > Matteo
Experimenting with Karaf 5
Hello, I would like to start playing with Karaf5, waiting for the official RC... With the final goal of migrating a few OSGi 3-tier projects (Hibernate, Declarative Services, Apache CXF REST) to Karaf-5 my idea is: - Put together a very trivial JPA+CXF project using "Karaf-JPA-example" and "Karaf-rest-example" in Karaf's examples module - Create a feature for the complete "demo application" - Run this application in Karaf-5, deploying the application feature. The lesson learned will be used in the actual migration process. Before I start working head-down on this, I would like your advice: is this approach going to work with Karaf 5? Or is there any evident show-stopper I should be aware? Many thanks for your help. Best regards, Matteo
RE: Karaf 5
Hi JB, Thank you very much. I look forward to dig in to it. Best, -- Jaap |-Oorspronkelijk bericht- |Van: Jean-Baptiste Onofré |Verzonden: donderdag 30 september 2021 18:08 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Hi Jaap, | |let me rebase and polish a bit and I will push a first round (probably tomorrow |night or during the weekend). I will keep you posted. | |Regards |JB | |On 30/09/2021 14:40, jgfrm wrote: |> Hi JB, |> |> That sounds interesting! |> Is it possible to share what you developed? |> |> Best, |> |> -- Jaap |> |> |-Oorspronkelijk bericht- |> |Van: Jean-Baptiste Onofré |> |Verzonden: donderdag 30 september 2021 11:34 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |Hi Jaap, |> | |> |so, yes, we are talking about the same thing ;) |> | |> |There are actually two parts: |> | |> |- registering Spring bean in the K5 service registry and use it in |> |another apps running in K5 |> |- registering "generic" services (like the json-config-loader, |> |extractor, etc) that provide shared resources (like HTTP handler) |> | |> |Regards |> |JB |> | |> |On 29/09/2021 23:30, jgfrm wrote: |> |> Perhaps. |> |> |> |> I want to be able to use a bean in other Spring module. |> |> |> |> What is also an issue it that two (or more) modules obviously |> |> result in two |> |sockets to be opened, in my case both 8400. |> |> A solution could be to open a different socket per module, e.g. |> |> negotiated |> |with a module for that purpose that also routes traffic for a |> |particular endpoint to the socket of the module handling that endpoint. |> |> |> |> In https://github.com/hank-cp/sbp (based on pf4j) they have a |> |> different |> |strategy; there they have one socket for REST calls, and specific |> |endpoints are forwarded to the appropriate plugin. |> |> |> |> Best, |> |> |> |> -- Jaap |> |> |> |> |> |> |-Oorspronkelijk bericht- |> |> |Van: JB Onofré |> |> |Verzonden: woensdag 29 september 2021 22:17 |> |> |Aan: user@karaf.apache.org |> |> |Onderwerp: Re: Karaf 5 |> |> | |> |> |I started a service bridge allowing to implicit push some spring |> |> |bean to the k5 registry and so that can be used from other modules |> |> |running in k5. It’s a local branch for now but I can push it on main. |> |> | |> |> |Is it what you are looking for ? |> |> | |> |> |Regards |> |> |JB |> |> | |> |> |> Le 29 sept. 2021 à 21:43, jgfrm a écrit : |> |> |> |> |> |> Is there already something working for exporting functionality |> |> |> of a Spring |> |> |modules to other modules? |> |> |> |> |> |> |-Oorspronkelijk bericht- |> |> |> |Van: Jean-Baptiste Onofré |> |> |> |Verzonden: woensdag 29 september 2021 17:26 |> |> |> |Aan: user@karaf.apache.org |> |> |> |Onderwerp: Re: Karaf 5 |> |> |> | |> |> |> |Thanks for the update. |> |> |> | |> |> |> |I'm happy to say you are the first one to "use/launch" Karaf 5 |> |> |> |;) |> |> |> | |> |> |> |About the TomcatURLStreamHandlerFactory is known "issue": |> |> |> | |> |> |> |https://github.com/jbonofre/karaf5/blob/main/services/spring-bo |> |> |> |ot- |> |> |> |application- |> |> |> |manager/src/main/java/org/apache/karaf/springboot/SpringBootApp |> |> |> |lic |> |> |> |ati |> |> |> |on |> |> |> |ManagerService.java#L110 |> |> |> | |> |> |> |I have to improve this ;) |> |> |> | |> |> |> |Regards |> |> |> |JB |> |> |> | |> |> |> |On 29/09/2021 17:19, jgfrm wrote: |> |> |> |> The following works: |> |> |> |> |> |> |> |> Karaf.json: |> |> |> |> |> |> |> |> { |> |> |> |>"applications": [ |> |> |> |> { |> |> |> |>"name": "e3web", |> |> |> |>"url": "file:///home/jaap/Karaf5Test/e3web-dev.jar", |> |> |> |>"type": "spring-boot", |> |> |> |>"properties": { |> |> |> |> "enableHttp": true, |> |> |> |> "enablePrometheus": true |> |> |> |>} |> |> |> |> } |> |> |> |>] |> |> |> |> } |> |> |> |> |> |> |> |> |> |> |> |> Add to Spring boot application: |> |> |> |> |> |> |>
Re: Karaf 5
Hi Jaap, let me rebase and polish a bit and I will push a first round (probably tomorrow night or during the weekend). I will keep you posted. Regards JB On 30/09/2021 14:40, jgfrm wrote: Hi JB, That sounds interesting! Is it possible to share what you developed? Best, -- Jaap |-Oorspronkelijk bericht- |Van: Jean-Baptiste Onofré |Verzonden: donderdag 30 september 2021 11:34 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Hi Jaap, | |so, yes, we are talking about the same thing ;) | |There are actually two parts: | |- registering Spring bean in the K5 service registry and use it in another apps |running in K5 |- registering "generic" services (like the json-config-loader, extractor, etc) that |provide shared resources (like HTTP handler) | |Regards |JB | |On 29/09/2021 23:30, jgfrm wrote: |> Perhaps. |> |> I want to be able to use a bean in other Spring module. |> |> What is also an issue it that two (or more) modules obviously result in two |sockets to be opened, in my case both 8400. |> A solution could be to open a different socket per module, e.g. negotiated |with a module for that purpose that also routes traffic for a particular |endpoint to the socket of the module handling that endpoint. |> |> In https://github.com/hank-cp/sbp (based on pf4j) they have a different |strategy; there they have one socket for REST calls, and specific endpoints are |forwarded to the appropriate plugin. |> |> Best, |> |> -- Jaap |> |> |> |-Oorspronkelijk bericht- |> |Van: JB Onofré |> |Verzonden: woensdag 29 september 2021 22:17 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |I started a service bridge allowing to implicit push some spring bean |> |to the k5 registry and so that can be used from other modules running |> |in k5. It’s a local branch for now but I can push it on main. |> | |> |Is it what you are looking for ? |> | |> |Regards |> |JB |> | |> |> Le 29 sept. 2021 à 21:43, jgfrm a écrit : |> |> |> |> Is there already something working for exporting functionality of |> |> a Spring |> |modules to other modules? |> |> |> |> |-Oorspronkelijk bericht- |> |> |Van: Jean-Baptiste Onofré |> |> |Verzonden: woensdag 29 september 2021 17:26 |> |> |Aan: user@karaf.apache.org |> |> |Onderwerp: Re: Karaf 5 |> |> | |> |> |Thanks for the update. |> |> | |> |> |I'm happy to say you are the first one to "use/launch" Karaf 5 ;) |> |> | |> |> |About the TomcatURLStreamHandlerFactory is known "issue": |> |> | |> |> |https://github.com/jbonofre/karaf5/blob/main/services/spring-boot- |> |> |application- |> |> |manager/src/main/java/org/apache/karaf/springboot/SpringBootApplic |> |> |ati |> |> |on |> |> |ManagerService.java#L110 |> |> | |> |> |I have to improve this ;) |> |> | |> |> |Regards |> |> |JB |> |> | |> |> |On 29/09/2021 17:19, jgfrm wrote: |> |> |> The following works: |> |> |> |> |> |> Karaf.json: |> |> |> |> |> |> { |> |> |>"applications": [ |> |> |> { |> |> |>"name": "e3web", |> |> |>"url": "file:///home/jaap/Karaf5Test/e3web-dev.jar", |> |> |>"type": "spring-boot", |> |> |>"properties": { |> |> |> "enableHttp": true, |> |> |> "enablePrometheus": true |> |> |>} |> |> |> } |> |> |>] |> |> |> } |> |> |> |> |> |> |> |> |> Add to Spring boot application: |> |> |> |> |> |> @SpringBootApplication |> |> |> @ComponentScan |> |> |> public class E3webApplication { |> |> |> |> |> |> ... |> |> |> public static void main(String[] args) { |> |> |> TomcatURLStreamHandlerFactory.disable(); // see |> |> |https://github.com/spring-projects/spring-boot/issues/21535 |> |> |> SpringApplication.run(E3webApplication.class, args); |> |> |> } |> |> |> |> |> |> |> |> |> Start with |> |> |> java --add-modules jdk.security.jgss -cp |> |> |> ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web- |> |> |> tes |> |> |> t-1 |> |> |> .0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manag |> |> |> er/ tar get/spring-boot-application-manager-5.0-SNAPSHOT.jar |> |> |> -Dkaraf.config=src/main/resources/karaf.json |> |> |> org.apache.karaf.boot.Main |> |> |> |> |>
RE: Karaf 5
Hi JB, That sounds interesting! Is it possible to share what you developed? Best, -- Jaap |-Oorspronkelijk bericht- |Van: Jean-Baptiste Onofré |Verzonden: donderdag 30 september 2021 11:34 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Hi Jaap, | |so, yes, we are talking about the same thing ;) | |There are actually two parts: | |- registering Spring bean in the K5 service registry and use it in another apps |running in K5 |- registering "generic" services (like the json-config-loader, extractor, etc) that |provide shared resources (like HTTP handler) | |Regards |JB | |On 29/09/2021 23:30, jgfrm wrote: |> Perhaps. |> |> I want to be able to use a bean in other Spring module. |> |> What is also an issue it that two (or more) modules obviously result in two |sockets to be opened, in my case both 8400. |> A solution could be to open a different socket per module, e.g. negotiated |with a module for that purpose that also routes traffic for a particular |endpoint to the socket of the module handling that endpoint. |> |> In https://github.com/hank-cp/sbp (based on pf4j) they have a different |strategy; there they have one socket for REST calls, and specific endpoints are |forwarded to the appropriate plugin. |> |> Best, |> |> -- Jaap |> |> |> |-Oorspronkelijk bericht- |> |Van: JB Onofré |> |Verzonden: woensdag 29 september 2021 22:17 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |I started a service bridge allowing to implicit push some spring bean |> |to the k5 registry and so that can be used from other modules running |> |in k5. It’s a local branch for now but I can push it on main. |> | |> |Is it what you are looking for ? |> | |> |Regards |> |JB |> | |> |> Le 29 sept. 2021 à 21:43, jgfrm a écrit : |> |> |> |> Is there already something working for exporting functionality of |> |> a Spring |> |modules to other modules? |> |> |> |> |-Oorspronkelijk bericht- |> |> |Van: Jean-Baptiste Onofré |> |> |Verzonden: woensdag 29 september 2021 17:26 |> |> |Aan: user@karaf.apache.org |> |> |Onderwerp: Re: Karaf 5 |> |> | |> |> |Thanks for the update. |> |> | |> |> |I'm happy to say you are the first one to "use/launch" Karaf 5 ;) |> |> | |> |> |About the TomcatURLStreamHandlerFactory is known "issue": |> |> | |> |> |https://github.com/jbonofre/karaf5/blob/main/services/spring-boot- |> |> |application- |> |> |manager/src/main/java/org/apache/karaf/springboot/SpringBootApplic |> |> |ati |> |> |on |> |> |ManagerService.java#L110 |> |> | |> |> |I have to improve this ;) |> |> | |> |> |Regards |> |> |JB |> |> | |> |> |On 29/09/2021 17:19, jgfrm wrote: |> |> |> The following works: |> |> |> |> |> |> Karaf.json: |> |> |> |> |> |> { |> |> |>"applications": [ |> |> |> { |> |> |>"name": "e3web", |> |> |>"url": "file:///home/jaap/Karaf5Test/e3web-dev.jar", |> |> |>"type": "spring-boot", |> |> |>"properties": { |> |> |> "enableHttp": true, |> |> |> "enablePrometheus": true |> |> |>} |> |> |> } |> |> |>] |> |> |> } |> |> |> |> |> |> |> |> |> Add to Spring boot application: |> |> |> |> |> |> @SpringBootApplication |> |> |> @ComponentScan |> |> |> public class E3webApplication { |> |> |> |> |> |> ... |> |> |> public static void main(String[] args) { |> |> |> TomcatURLStreamHandlerFactory.disable(); // see |> |> |https://github.com/spring-projects/spring-boot/issues/21535 |> |> |> SpringApplication.run(E3webApplication.class, args); |> |> |> } |> |> |> |> |> |> |> |> |> Start with |> |> |> java --add-modules jdk.security.jgss -cp |> |> |> ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web- |> |> |> tes |> |> |> t-1 |> |> |> .0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manag |> |> |> er/ tar get/spring-boot-application-manager-5.0-SNAPSHOT.jar |> |> |> -Dkaraf.config=src/main/resources/karaf.json |> |> |> org.apache.karaf.boot.Main |> |> |> |> |> |> |-Oorspronkelijk bericht- |> |> |> |Van: JB Onofré |> |> |> |Verzonden: dinsdag 28 september 2021 06:34 |> |> |> |Aan: user@karaf.apache.org |> |>
Re: Karaf 5
Hi Jaap, so, yes, we are talking about the same thing ;) There are actually two parts: - registering Spring bean in the K5 service registry and use it in another apps running in K5 - registering "generic" services (like the json-config-loader, extractor, etc) that provide shared resources (like HTTP handler) Regards JB On 29/09/2021 23:30, jgfrm wrote: Perhaps. I want to be able to use a bean in other Spring module. What is also an issue it that two (or more) modules obviously result in two sockets to be opened, in my case both 8400. A solution could be to open a different socket per module, e.g. negotiated with a module for that purpose that also routes traffic for a particular endpoint to the socket of the module handling that endpoint. In https://github.com/hank-cp/sbp (based on pf4j) they have a different strategy; there they have one socket for REST calls, and specific endpoints are forwarded to the appropriate plugin. Best, -- Jaap |-Oorspronkelijk bericht- |Van: JB Onofré |Verzonden: woensdag 29 september 2021 22:17 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |I started a service bridge allowing to implicit push some spring bean to the k5 |registry and so that can be used from other modules running in k5. It’s a local |branch for now but I can push it on main. | |Is it what you are looking for ? | |Regards |JB | |> Le 29 sept. 2021 à 21:43, jgfrm a écrit : |> |> Is there already something working for exporting functionality of a Spring |modules to other modules? |> |> |-Oorspronkelijk bericht- |> |Van: Jean-Baptiste Onofré |> |Verzonden: woensdag 29 september 2021 17:26 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |Thanks for the update. |> | |> |I'm happy to say you are the first one to "use/launch" Karaf 5 ;) |> | |> |About the TomcatURLStreamHandlerFactory is known "issue": |> | |> |https://github.com/jbonofre/karaf5/blob/main/services/spring-boot- |> |application- |> |manager/src/main/java/org/apache/karaf/springboot/SpringBootApplicati |> |on |> |ManagerService.java#L110 |> | |> |I have to improve this ;) |> | |> |Regards |> |JB |> | |> |On 29/09/2021 17:19, jgfrm wrote: |> |> The following works: |> |> |> |> Karaf.json: |> |> |> |> { |> |>"applications": [ |> |> { |> |>"name": "e3web", |> |>"url": "file:///home/jaap/Karaf5Test/e3web-dev.jar", |> |>"type": "spring-boot", |> |>"properties": { |> |> "enableHttp": true, |> |> "enablePrometheus": true |> |>} |> |> } |> |>] |> |> } |> |> |> |> |> |> Add to Spring boot application: |> |> |> |> @SpringBootApplication |> |> @ComponentScan |> |> public class E3webApplication { |> |> |> |> ... |> |> public static void main(String[] args) { |> |> TomcatURLStreamHandlerFactory.disable(); // see |> |https://github.com/spring-projects/spring-boot/issues/21535 |> |> SpringApplication.run(E3webApplication.class, args); |> |> } |> |> |> |> |> |> Start with |> |> java --add-modules jdk.security.jgss -cp |> |> ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-tes |> |> t-1 |> |> .0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/ |> |> tar get/spring-boot-application-manager-5.0-SNAPSHOT.jar |> |> -Dkaraf.config=src/main/resources/karaf.json |> |> org.apache.karaf.boot.Main |> |> |> |> |-Oorspronkelijk bericht- |> |> |Van: JB Onofré |> |> |Verzonden: dinsdag 28 september 2021 06:34 |> |> |Aan: user@karaf.apache.org |> |> |Onderwerp: Re: Karaf 5 |> |> | |> |> |Hi |> |> | |> |> |No it’s not this because k5 don’t use OSGi for the spring boot |> |> |launcher. I still think it’s a missing add modules as Jvm arg. I |> |> |will check |> |today. |> |> | |> |> |Regards |> |> |JB |> |> | |> |> |> Le 27 sept. 2021 à 23:39, jgfrm a écrit : |> |> |> |> |> |> While Googling, I came across on of your blogs |> |> |(http://nanthrax.blogspot.com/2021/04/whats-new-in-apache-karaf- |> |> |431.html) that one of the changes in Karaf was to export the |> |> |java.* |> |packages. |> |> |Could that be the cause? |> |> |> |> |> |> |-Oorspronkelijk bericht- |> |> |> |Van: Jean-Baptiste Onofre |> |> |> |Verzonden: zondag 26 september 2021 18:02 |> |> |> |Aan: user@karaf.apache.org
RE: Karaf 5
Perhaps. I want to be able to use a bean in other Spring module. What is also an issue it that two (or more) modules obviously result in two sockets to be opened, in my case both 8400. A solution could be to open a different socket per module, e.g. negotiated with a module for that purpose that also routes traffic for a particular endpoint to the socket of the module handling that endpoint. In https://github.com/hank-cp/sbp (based on pf4j) they have a different strategy; there they have one socket for REST calls, and specific endpoints are forwarded to the appropriate plugin. Best, -- Jaap |-Oorspronkelijk bericht- |Van: JB Onofré |Verzonden: woensdag 29 september 2021 22:17 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |I started a service bridge allowing to implicit push some spring bean to the k5 |registry and so that can be used from other modules running in k5. It’s a local |branch for now but I can push it on main. | |Is it what you are looking for ? | |Regards |JB | |> Le 29 sept. 2021 à 21:43, jgfrm a écrit : |> |> Is there already something working for exporting functionality of a Spring |modules to other modules? |> |> |-Oorspronkelijk bericht- |> |Van: Jean-Baptiste Onofré |> |Verzonden: woensdag 29 september 2021 17:26 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |Thanks for the update. |> | |> |I'm happy to say you are the first one to "use/launch" Karaf 5 ;) |> | |> |About the TomcatURLStreamHandlerFactory is known "issue": |> | |> |https://github.com/jbonofre/karaf5/blob/main/services/spring-boot- |> |application- |> |manager/src/main/java/org/apache/karaf/springboot/SpringBootApplicati |> |on |> |ManagerService.java#L110 |> | |> |I have to improve this ;) |> | |> |Regards |> |JB |> | |> |On 29/09/2021 17:19, jgfrm wrote: |> |> The following works: |> |> |> |> Karaf.json: |> |> |> |> { |> |>"applications": [ |> |> { |> |>"name": "e3web", |> |>"url": "file:///home/jaap/Karaf5Test/e3web-dev.jar", |> |>"type": "spring-boot", |> |>"properties": { |> |> "enableHttp": true, |> |> "enablePrometheus": true |> |>} |> |> } |> |>] |> |> } |> |> |> |> |> |> Add to Spring boot application: |> |> |> |> @SpringBootApplication |> |> @ComponentScan |> |> public class E3webApplication { |> |> |> |> ... |> |> public static void main(String[] args) { |> |> TomcatURLStreamHandlerFactory.disable(); // see |> |https://github.com/spring-projects/spring-boot/issues/21535 |> |> SpringApplication.run(E3webApplication.class, args); |> |> } |> |> |> |> |> |> Start with |> |> java --add-modules jdk.security.jgss -cp |> |> ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-tes |> |> t-1 |> |> .0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/ |> |> tar get/spring-boot-application-manager-5.0-SNAPSHOT.jar |> |> -Dkaraf.config=src/main/resources/karaf.json |> |> org.apache.karaf.boot.Main |> |> |> |> |-Oorspronkelijk bericht- |> |> |Van: JB Onofré |> |> |Verzonden: dinsdag 28 september 2021 06:34 |> |> |Aan: user@karaf.apache.org |> |> |Onderwerp: Re: Karaf 5 |> |> | |> |> |Hi |> |> | |> |> |No it’s not this because k5 don’t use OSGi for the spring boot |> |> |launcher. I still think it’s a missing add modules as Jvm arg. I |> |> |will check |> |today. |> |> | |> |> |Regards |> |> |JB |> |> | |> |> |> Le 27 sept. 2021 à 23:39, jgfrm a écrit : |> |> |> |> |> |> While Googling, I came across on of your blogs |> |> |(http://nanthrax.blogspot.com/2021/04/whats-new-in-apache-karaf- |> |> |431.html) that one of the changes in Karaf was to export the |> |> |java.* |> |packages. |> |> |Could that be the cause? |> |> |> |> |> |> |-Oorspronkelijk bericht- |> |> |> |Van: Jean-Baptiste Onofre |> |> |> |Verzonden: zondag 26 september 2021 18:02 |> |> |> |Aan: user@karaf.apache.org |> |> |> |Onderwerp: Re: Karaf 5 |> |> |> | |> |> |> |Hi |> |> |> | |> |> |> |No sure, it’s only class loader issue. I remember this issue in |> |> |> |pure spring boot with JDK11. |> |> |> | |> |> |> |Let me check. |> |> |> | |> |> |> |Regards |> |> |> |JB |> |> |> | |> |> |>
Re: Karaf 5
I started a service bridge allowing to implicit push some spring bean to the k5 registry and so that can be used from other modules running in k5. It’s a local branch for now but I can push it on main. Is it what you are looking for ? Regards JB > Le 29 sept. 2021 à 21:43, jgfrm a écrit : > > Is there already something working for exporting functionality of a Spring > modules to other modules? > > |-Oorspronkelijk bericht- > |Van: Jean-Baptiste Onofré > |Verzonden: woensdag 29 september 2021 17:26 > |Aan: user@karaf.apache.org > |Onderwerp: Re: Karaf 5 > | > |Thanks for the update. > | > |I'm happy to say you are the first one to "use/launch" Karaf 5 ;) > | > |About the TomcatURLStreamHandlerFactory is known "issue": > | > |https://github.com/jbonofre/karaf5/blob/main/services/spring-boot- > |application- > |manager/src/main/java/org/apache/karaf/springboot/SpringBootApplication > |ManagerService.java#L110 > | > |I have to improve this ;) > | > |Regards > |JB > | > |On 29/09/2021 17:19, jgfrm wrote: > |> The following works: > |> > |> Karaf.json: > |> > |> { > |>"applications": [ > |> { > |>"name": "e3web", > |>"url": "file:///home/jaap/Karaf5Test/e3web-dev.jar", > |>"type": "spring-boot", > |>"properties": { > |> "enableHttp": true, > |> "enablePrometheus": true > |>} > |> } > |>] > |> } > |> > |> > |> Add to Spring boot application: > |> > |> @SpringBootApplication > |> @ComponentScan > |> public class E3webApplication { > |> > |> ... > |> public static void main(String[] args) { > |> TomcatURLStreamHandlerFactory.disable(); // see > |https://github.com/spring-projects/spring-boot/issues/21535 > |> SpringApplication.run(E3webApplication.class, args); > |> } > |> > |> > |> Start with > |> java --add-modules jdk.security.jgss -cp > |> ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-test-1 > |> .0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/tar > |> get/spring-boot-application-manager-5.0-SNAPSHOT.jar > |> -Dkaraf.config=src/main/resources/karaf.json > |> org.apache.karaf.boot.Main > |> > |> |-Oorspronkelijk bericht- > |> |Van: JB Onofré > |> |Verzonden: dinsdag 28 september 2021 06:34 > |> |Aan: user@karaf.apache.org > |> |Onderwerp: Re: Karaf 5 > |> | > |> |Hi > |> | > |> |No it’s not this because k5 don’t use OSGi for the spring boot > |> |launcher. I still think it’s a missing add modules as Jvm arg. I will > check > |today. > |> | > |> |Regards > |> |JB > |> | > |> |> Le 27 sept. 2021 à 23:39, jgfrm a écrit : > |> |> > |> |> While Googling, I came across on of your blogs > |> |(http://nanthrax.blogspot.com/2021/04/whats-new-in-apache-karaf- > |> |431.html) that one of the changes in Karaf was to export the java.* > |packages. > |> |Could that be the cause? > |> |> > |> |> |-Oorspronkelijk bericht- > |> |> |Van: Jean-Baptiste Onofre > |> |> |Verzonden: zondag 26 september 2021 18:02 > |> |> |Aan: user@karaf.apache.org > |> |> |Onderwerp: Re: Karaf 5 > |> |> | > |> |> |Hi > |> |> | > |> |> |No sure, it’s only class loader issue. I remember this issue in > |> |> |pure spring boot with JDK11. > |> |> | > |> |> |Let me check. > |> |> | > |> |> |Regards > |> |> |JB > |> |> | > |> |> |> Le 26 sept. 2021 à 17:59, jgfrm a écrit : > |> |> |> > |> |> |> Hi JB, > |> |> |> > |> |> |> Fully understand that it is still work in progress. > |> |> |> > |> |> |> Regarding the .NoClassDefFoundError: org/ietf/jgss/GSSException > |> |> |> --add-modules java.security.jgss does not solve it? > |> |> |> Is it a class loader problem? > |> |> |> > |> |> |> Best, > |> |> |> > |> |> |> -- Jaap > |> |> |> > |> |> |> > |> |> |> |-Oorspronkelijk bericht- > |> |> |> |Van: Jean-Baptiste Onofre > |> |> |> |Verzonden: zondag 26 september 2021 14:20 > |> |> |> |Aan: user@karaf.apache.org > |> |> |> |Onderwerp: Re: Karaf 5 > |> |> |> | > |>
RE: Karaf 5
Is there already something working for exporting functionality of a Spring modules to other modules? |-Oorspronkelijk bericht- |Van: Jean-Baptiste Onofré |Verzonden: woensdag 29 september 2021 17:26 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Thanks for the update. | |I'm happy to say you are the first one to "use/launch" Karaf 5 ;) | |About the TomcatURLStreamHandlerFactory is known "issue": | |https://github.com/jbonofre/karaf5/blob/main/services/spring-boot- |application- |manager/src/main/java/org/apache/karaf/springboot/SpringBootApplication |ManagerService.java#L110 | |I have to improve this ;) | |Regards |JB | |On 29/09/2021 17:19, jgfrm wrote: |> The following works: |> |> Karaf.json: |> |> { |>"applications": [ |> { |>"name": "e3web", |>"url": "file:///home/jaap/Karaf5Test/e3web-dev.jar", |>"type": "spring-boot", |>"properties": { |> "enableHttp": true, |> "enablePrometheus": true |>} |> } |>] |> } |> |> |> Add to Spring boot application: |> |> @SpringBootApplication |> @ComponentScan |> public class E3webApplication { |> |> ... |> public static void main(String[] args) { |> TomcatURLStreamHandlerFactory.disable(); // see |https://github.com/spring-projects/spring-boot/issues/21535 |> SpringApplication.run(E3webApplication.class, args); |> } |> |> |> Start with |> java --add-modules jdk.security.jgss -cp |> ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-test-1 |> .0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/tar |> get/spring-boot-application-manager-5.0-SNAPSHOT.jar |> -Dkaraf.config=src/main/resources/karaf.json |> org.apache.karaf.boot.Main |> |> |-Oorspronkelijk bericht- |> |Van: JB Onofré |> |Verzonden: dinsdag 28 september 2021 06:34 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |Hi |> | |> |No it’s not this because k5 don’t use OSGi for the spring boot |> |launcher. I still think it’s a missing add modules as Jvm arg. I will check |today. |> | |> |Regards |> |JB |> | |> |> Le 27 sept. 2021 à 23:39, jgfrm a écrit : |> |> |> |> While Googling, I came across on of your blogs |> |(http://nanthrax.blogspot.com/2021/04/whats-new-in-apache-karaf- |> |431.html) that one of the changes in Karaf was to export the java.* |packages. |> |Could that be the cause? |> |> |> |> |-Oorspronkelijk bericht- |> |> |Van: Jean-Baptiste Onofre |> |> |Verzonden: zondag 26 september 2021 18:02 |> |> |Aan: user@karaf.apache.org |> |> |Onderwerp: Re: Karaf 5 |> |> | |> |> |Hi |> |> | |> |> |No sure, it’s only class loader issue. I remember this issue in |> |> |pure spring boot with JDK11. |> |> | |> |> |Let me check. |> |> | |> |> |Regards |> |> |JB |> |> | |> |> |> Le 26 sept. 2021 à 17:59, jgfrm a écrit : |> |> |> |> |> |> Hi JB, |> |> |> |> |> |> Fully understand that it is still work in progress. |> |> |> |> |> |> Regarding the .NoClassDefFoundError: org/ietf/jgss/GSSException |> |> |> --add-modules java.security.jgss does not solve it? |> |> |> Is it a class loader problem? |> |> |> |> |> |> Best, |> |> |> |> |> |> -- Jaap |> |> |> |> |> |> |> |> |> |-Oorspronkelijk bericht- |> |> |> |Van: Jean-Baptiste Onofre |> |> |> |Verzonden: zondag 26 september 2021 14:20 |> |> |> |Aan: user@karaf.apache.org |> |> |> |Onderwerp: Re: Karaf 5 |> |> |> | |> |> |> |Hi Jaap, |> |> |> | |> |> |> |First, maybe I was not clean in my presentation: Karaf 5 is |> |> |> |still under development and so, everything is not yet ready. |> |> |> |As said, I will “move” the code to Apache Karaf repo as soon as |> |> |> |I consider I have something clean and running. |> |> |> | |> |> |> |Anyway, about your email, I will check. Today my focus is on |> |> |> |the OsgiApplicationManager to be Karaf 4 compliant. |> |> |> |I also have to improve the Karaf Config service. |> |> |> | |> |> |> |By the way, you don’t need your own Main, just use the |> |> |> |repackage with regular provided Main (you can take a look on |> |> |> |the K4 assembly repackage as an example). I will create a |> |> |> |gradle/maven plugin with |> |> |repackage. |> |> |> | |> |> |> |Regarding y
Re: Karaf 5
Thanks for the update. I'm happy to say you are the first one to "use/launch" Karaf 5 ;) About the TomcatURLStreamHandlerFactory is known "issue": https://github.com/jbonofre/karaf5/blob/main/services/spring-boot-application-manager/src/main/java/org/apache/karaf/springboot/SpringBootApplicationManagerService.java#L110 I have to improve this ;) Regards JB On 29/09/2021 17:19, jgfrm wrote: The following works: Karaf.json: { "applications": [ { "name": "e3web", "url": "file:///home/jaap/Karaf5Test/e3web-dev.jar", "type": "spring-boot", "properties": { "enableHttp": true, "enablePrometheus": true } } ] } Add to Spring boot application: @SpringBootApplication @ComponentScan public class E3webApplication { ... public static void main(String[] args) { TomcatURLStreamHandlerFactory.disable(); // see https://github.com/spring-projects/spring-boot/issues/21535 SpringApplication.run(E3webApplication.class, args); } Start with java --add-modules jdk.security.jgss -cp ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-test-1.0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/target/spring-boot-application-manager-5.0-SNAPSHOT.jar -Dkaraf.config=src/main/resources/karaf.json org.apache.karaf.boot.Main |-Oorspronkelijk bericht- |Van: JB Onofré |Verzonden: dinsdag 28 september 2021 06:34 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Hi | |No it’s not this because k5 don’t use OSGi for the spring boot launcher. I still |think it’s a missing add modules as Jvm arg. I will check today. | |Regards |JB | |> Le 27 sept. 2021 à 23:39, jgfrm a écrit : |> |> While Googling, I came across on of your blogs |(http://nanthrax.blogspot.com/2021/04/whats-new-in-apache-karaf- |431.html) that one of the changes in Karaf was to export the java.* packages. |Could that be the cause? |> |> |-Oorspronkelijk bericht----- |> |Van: Jean-Baptiste Onofre |> |Verzonden: zondag 26 september 2021 18:02 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |Hi |> | |> |No sure, it’s only class loader issue. I remember this issue in pure |> |spring boot with JDK11. |> | |> |Let me check. |> | |> |Regards |> |JB |> | |> |> Le 26 sept. 2021 à 17:59, jgfrm a écrit : |> |> |> |> Hi JB, |> |> |> |> Fully understand that it is still work in progress. |> |> |> |> Regarding the .NoClassDefFoundError: org/ietf/jgss/GSSException |> |> --add-modules java.security.jgss does not solve it? |> |> Is it a class loader problem? |> |> |> |> Best, |> |> |> |> -- Jaap |> |> |> |> |> |> |-Oorspronkelijk bericht- |> |> |Van: Jean-Baptiste Onofre |> |> |Verzonden: zondag 26 september 2021 14:20 |> |> |Aan: user@karaf.apache.org |> |> |Onderwerp: Re: Karaf 5 |> |> | |> |> |Hi Jaap, |> |> | |> |> |First, maybe I was not clean in my presentation: Karaf 5 is still |> |> |under development and so, everything is not yet ready. |> |> |As said, I will “move” the code to Apache Karaf repo as soon as I |> |> |consider I have something clean and running. |> |> | |> |> |Anyway, about your email, I will check. Today my focus is on the |> |> |OsgiApplicationManager to be Karaf 4 compliant. |> |> |I also have to improve the Karaf Config service. |> |> | |> |> |By the way, you don’t need your own Main, just use the repackage |> |> |with regular provided Main (you can take a look on the K4 assembly |> |> |repackage as an example). I will create a gradle/maven plugin with |> |repackage. |> |> | |> |> |Regarding your issue, as you are running with JDK11, I guess you |> |> |have to add -- add-modules java.security.jgss to avoid the |> |NoClassDefFoundException. |> |> | |> |> |Thanks anyway for your feedback, much appreciated. |> |> | |> |> |Regards |> |> |JB |> |> | |> |> |> Le 26 sept. 2021 à 12:00, jgfrm a écrit : |> |> |> |> |> |> Hi Jean-Baptiste, |> |> |> |> |> |> I managed to start (well not completely) my spring application. |> |> |> However, while starting up, I get an exception: |> |> |> |> |> |> 11:43:03.148 [main] ERROR o.s.boot.SpringApplication:837 - |> |> |> Application run failed |> |> |> org.springframework.context.ApplicationContextException: Unable |> |> |> to start web server; nested exception is |java.lang.NoClassDefFoundError: |> |> |> org/ietf/jgss/GSSException |> |> |> |>
RE: Karaf 5
The following works: Karaf.json: { "applications": [ { "name": "e3web", "url": "file:///home/jaap/Karaf5Test/e3web-dev.jar", "type": "spring-boot", "properties": { "enableHttp": true, "enablePrometheus": true } } ] } Add to Spring boot application: @SpringBootApplication @ComponentScan public class E3webApplication { ... public static void main(String[] args) { TomcatURLStreamHandlerFactory.disable(); // see https://github.com/spring-projects/spring-boot/issues/21535 SpringApplication.run(E3webApplication.class, args); } Start with java --add-modules jdk.security.jgss -cp ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-test-1.0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/target/spring-boot-application-manager-5.0-SNAPSHOT.jar -Dkaraf.config=src/main/resources/karaf.json org.apache.karaf.boot.Main |-Oorspronkelijk bericht- |Van: JB Onofré |Verzonden: dinsdag 28 september 2021 06:34 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Hi | |No it’s not this because k5 don’t use OSGi for the spring boot launcher. I still |think it’s a missing add modules as Jvm arg. I will check today. | |Regards |JB | |> Le 27 sept. 2021 à 23:39, jgfrm a écrit : |> |> While Googling, I came across on of your blogs |(http://nanthrax.blogspot.com/2021/04/whats-new-in-apache-karaf- |431.html) that one of the changes in Karaf was to export the java.* packages. |Could that be the cause? |> |> |-Oorspronkelijk bericht- |> |Van: Jean-Baptiste Onofre |> |Verzonden: zondag 26 september 2021 18:02 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |Hi |> | |> |No sure, it’s only class loader issue. I remember this issue in pure |> |spring boot with JDK11. |> | |> |Let me check. |> | |> |Regards |> |JB |> | |> |> Le 26 sept. 2021 à 17:59, jgfrm a écrit : |> |> |> |> Hi JB, |> |> |> |> Fully understand that it is still work in progress. |> |> |> |> Regarding the .NoClassDefFoundError: org/ietf/jgss/GSSException |> |> --add-modules java.security.jgss does not solve it? |> |> Is it a class loader problem? |> |> |> |> Best, |> |> |> |> -- Jaap |> |> |> |> |> |> |-Oorspronkelijk bericht- |> |> |Van: Jean-Baptiste Onofre |> |> |Verzonden: zondag 26 september 2021 14:20 |> |> |Aan: user@karaf.apache.org |> |> |Onderwerp: Re: Karaf 5 |> |> | |> |> |Hi Jaap, |> |> | |> |> |First, maybe I was not clean in my presentation: Karaf 5 is still |> |> |under development and so, everything is not yet ready. |> |> |As said, I will “move” the code to Apache Karaf repo as soon as I |> |> |consider I have something clean and running. |> |> | |> |> |Anyway, about your email, I will check. Today my focus is on the |> |> |OsgiApplicationManager to be Karaf 4 compliant. |> |> |I also have to improve the Karaf Config service. |> |> | |> |> |By the way, you don’t need your own Main, just use the repackage |> |> |with regular provided Main (you can take a look on the K4 assembly |> |> |repackage as an example). I will create a gradle/maven plugin with |> |repackage. |> |> | |> |> |Regarding your issue, as you are running with JDK11, I guess you |> |> |have to add -- add-modules java.security.jgss to avoid the |> |NoClassDefFoundException. |> |> | |> |> |Thanks anyway for your feedback, much appreciated. |> |> | |> |> |Regards |> |> |JB |> |> | |> |> |> Le 26 sept. 2021 à 12:00, jgfrm a écrit : |> |> |> |> |> |> Hi Jean-Baptiste, |> |> |> |> |> |> I managed to start (well not completely) my spring application. |> |> |> However, while starting up, I get an exception: |> |> |> |> |> |> 11:43:03.148 [main] ERROR o.s.boot.SpringApplication:837 - |> |> |> Application run failed |> |> |> org.springframework.context.ApplicationContextException: Unable |> |> |> to start web server; nested exception is |java.lang.NoClassDefFoundError: |> |> |> org/ietf/jgss/GSSException |> |> |> |> |> |> Any ideas? |> |> |> |> |> |> Also, I had to make modifications in |> |> |SpringBootApplicationManagerService/start: |> |> |> |> |> |> try { |> |> |>Thread.currentThread().setContextClassLoader(classLoader); |> |> |>// disable tomcat stream handler |> |> |>/* There is no TomcatURLStreamHandlerFactory in my spring jar |> |> |>
Re: Karaf 5
Hi No it’s not this because k5 don’t use OSGi for the spring boot launcher. I still think it’s a missing add modules as Jvm arg. I will check today. Regards JB > Le 27 sept. 2021 à 23:39, jgfrm a écrit : > > While Googling, I came across on of your blogs > (http://nanthrax.blogspot.com/2021/04/whats-new-in-apache-karaf-431.html) > that one of the changes in Karaf was to export the java.* packages. Could > that be the cause? > > |-Oorspronkelijk bericht- > |Van: Jean-Baptiste Onofre > |Verzonden: zondag 26 september 2021 18:02 > |Aan: user@karaf.apache.org > |Onderwerp: Re: Karaf 5 > | > |Hi > | > |No sure, it’s only class loader issue. I remember this issue in pure spring > boot > |with JDK11. > | > |Let me check. > | > |Regards > |JB > | > |> Le 26 sept. 2021 à 17:59, jgfrm a écrit : > |> > |> Hi JB, > |> > |> Fully understand that it is still work in progress. > |> > |> Regarding the .NoClassDefFoundError: org/ietf/jgss/GSSException > |> --add-modules java.security.jgss does not solve it? > |> Is it a class loader problem? > |> > |> Best, > |> > |> -- Jaap > |> > |> > |> |-Oorspronkelijk bericht- > |> |Van: Jean-Baptiste Onofre > |> |Verzonden: zondag 26 september 2021 14:20 > |> |Aan: user@karaf.apache.org > |> |Onderwerp: Re: Karaf 5 > |> | > |> |Hi Jaap, > |> | > |> |First, maybe I was not clean in my presentation: Karaf 5 is still > |> |under development and so, everything is not yet ready. > |> |As said, I will “move” the code to Apache Karaf repo as soon as I > |> |consider I have something clean and running. > |> | > |> |Anyway, about your email, I will check. Today my focus is on the > |> |OsgiApplicationManager to be Karaf 4 compliant. > |> |I also have to improve the Karaf Config service. > |> | > |> |By the way, you don’t need your own Main, just use the repackage with > |> |regular provided Main (you can take a look on the K4 assembly > |> |repackage as an example). I will create a gradle/maven plugin with > |repackage. > |> | > |> |Regarding your issue, as you are running with JDK11, I guess you have > |> |to add -- add-modules java.security.jgss to avoid the > |NoClassDefFoundException. > |> | > |> |Thanks anyway for your feedback, much appreciated. > |> | > |> |Regards > |> |JB > |> | > |> |> Le 26 sept. 2021 à 12:00, jgfrm a écrit : > |> |> > |> |> Hi Jean-Baptiste, > |> |> > |> |> I managed to start (well not completely) my spring application. > |> |> However, while starting up, I get an exception: > |> |> > |> |> 11:43:03.148 [main] ERROR o.s.boot.SpringApplication:837 - > |> |> Application run failed > |> |> org.springframework.context.ApplicationContextException: Unable to > |> |> start web server; nested exception is java.lang.NoClassDefFoundError: > |> |> org/ietf/jgss/GSSException > |> |> > |> |> Any ideas? > |> |> > |> |> Also, I had to make modifications in > |> |SpringBootApplicationManagerService/start: > |> |> > |> |> try { > |> |>Thread.currentThread().setContextClassLoader(classLoader); > |> |>// disable tomcat stream handler > |> |>/* There is no TomcatURLStreamHandlerFactory in my spring jar > |> |>final Method tomcat = > |> |classLoader.loadClass("org.apache.catalina.webresources.TomcatURLStre > |> |am HandlerFactory").getMethod("disable"); > |> |>if (!tomcat.isBridge()) { > |> |>tomcat.setAccessible(true); > |> |>} > |> |>tomcat.invoke(null, null); > |> |> */ > |> |>// invoke spring boot main > |> |>final Method main = > |> |classLoader.loadClass("org.springframework.boot.loader.JarLauncher"). > |> |getM > |> |ethod("main", String[].class); > |> |>main.setAccessible(true); > |> |>log.info("Call JarLauncher"); > |> |>if (properties.get("args") != null) { > |> |>log.info("Call JarLauncher with args"); > |> |>main.invoke(null, new Object[]{ properties.get("args") > }); > |> |>} else { > |> |>log.info("Call JarLauncher without args"); > |> |>main.invoke(null, new Object[]{new String[0]}); // > |>
RE: Karaf 5
While Googling, I came across on of your blogs (http://nanthrax.blogspot.com/2021/04/whats-new-in-apache-karaf-431.html) that one of the changes in Karaf was to export the java.* packages. Could that be the cause? |-Oorspronkelijk bericht- |Van: Jean-Baptiste Onofre |Verzonden: zondag 26 september 2021 18:02 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Hi | |No sure, it’s only class loader issue. I remember this issue in pure spring boot |with JDK11. | |Let me check. | |Regards |JB | |> Le 26 sept. 2021 à 17:59, jgfrm a écrit : |> |> Hi JB, |> |> Fully understand that it is still work in progress. |> |> Regarding the .NoClassDefFoundError: org/ietf/jgss/GSSException |> --add-modules java.security.jgss does not solve it? |> Is it a class loader problem? |> |> Best, |> |> -- Jaap |> |> |> |-Oorspronkelijk bericht- |> |Van: Jean-Baptiste Onofre |> |Verzonden: zondag 26 september 2021 14:20 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |Hi Jaap, |> | |> |First, maybe I was not clean in my presentation: Karaf 5 is still |> |under development and so, everything is not yet ready. |> |As said, I will “move” the code to Apache Karaf repo as soon as I |> |consider I have something clean and running. |> | |> |Anyway, about your email, I will check. Today my focus is on the |> |OsgiApplicationManager to be Karaf 4 compliant. |> |I also have to improve the Karaf Config service. |> | |> |By the way, you don’t need your own Main, just use the repackage with |> |regular provided Main (you can take a look on the K4 assembly |> |repackage as an example). I will create a gradle/maven plugin with |repackage. |> | |> |Regarding your issue, as you are running with JDK11, I guess you have |> |to add -- add-modules java.security.jgss to avoid the |NoClassDefFoundException. |> | |> |Thanks anyway for your feedback, much appreciated. |> | |> |Regards |> |JB |> | |> |> Le 26 sept. 2021 à 12:00, jgfrm a écrit : |> |> |> |> Hi Jean-Baptiste, |> |> |> |> I managed to start (well not completely) my spring application. |> |> However, while starting up, I get an exception: |> |> |> |> 11:43:03.148 [main] ERROR o.s.boot.SpringApplication:837 - |> |> Application run failed |> |> org.springframework.context.ApplicationContextException: Unable to |> |> start web server; nested exception is java.lang.NoClassDefFoundError: |> |> org/ietf/jgss/GSSException |> |> |> |> Any ideas? |> |> |> |> Also, I had to make modifications in |> |SpringBootApplicationManagerService/start: |> |> |> |> try { |> |>Thread.currentThread().setContextClassLoader(classLoader); |> |>// disable tomcat stream handler |> |>/* There is no TomcatURLStreamHandlerFactory in my spring jar |> |>final Method tomcat = |> |classLoader.loadClass("org.apache.catalina.webresources.TomcatURLStre |> |am HandlerFactory").getMethod("disable"); |> |>if (!tomcat.isBridge()) { |> |>tomcat.setAccessible(true); |> |>} |> |>tomcat.invoke(null, null); |> |> */ |> |>// invoke spring boot main |> |>final Method main = |> |classLoader.loadClass("org.springframework.boot.loader.JarLauncher"). |> |getM |> |ethod("main", String[].class); |> |>main.setAccessible(true); |> |>log.info("Call JarLauncher"); |> |>if (properties.get("args") != null) { |> |>log.info("Call JarLauncher with args"); |> |>main.invoke(null, new Object[]{ properties.get("args") }); |> |>} else { |> |>log.info("Call JarLauncher without args"); |> |>main.invoke(null, new Object[]{new String[0]}); // |> |> the original invoke |> |did not work for me |> |>} |> |>} finally { |> |>Thread.currentThread().setContextClassLoader(original); |> |>} |> |> |> |> Further details: |> |> - openjdk version "11.0.12" 2021-07-20 |> |> - invocation: |> |> java -cp |> |> ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-tes |> |> t-1 |> |> .0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/ |> |> tar get/spring-boot-application-manager-5.0-SNAPSHOT.jar |> |> -Dkaraf.config=src/main/resources/karaf.json Main |> |> |> |> Main.java: |> |> ### |> |> public class Main { |> |>public s
Re: Karaf 5
Hi No sure, it’s only class loader issue. I remember this issue in pure spring boot with JDK11. Let me check. Regards JB > Le 26 sept. 2021 à 17:59, jgfrm a écrit : > > Hi JB, > > Fully understand that it is still work in progress. > > Regarding the .NoClassDefFoundError: org/ietf/jgss/GSSException > --add-modules java.security.jgss does not solve it? > Is it a class loader problem? > > Best, > > -- Jaap > > > |-Oorspronkelijk bericht- > |Van: Jean-Baptiste Onofre > |Verzonden: zondag 26 september 2021 14:20 > |Aan: user@karaf.apache.org > |Onderwerp: Re: Karaf 5 > | > |Hi Jaap, > | > |First, maybe I was not clean in my presentation: Karaf 5 is still under > |development and so, everything is not yet ready. > |As said, I will “move” the code to Apache Karaf repo as soon as I consider I > |have something clean and running. > | > |Anyway, about your email, I will check. Today my focus is on the > |OsgiApplicationManager to be Karaf 4 compliant. > |I also have to improve the Karaf Config service. > | > |By the way, you don’t need your own Main, just use the repackage with > |regular provided Main (you can take a look on the K4 assembly repackage as > |an example). I will create a gradle/maven plugin with repackage. > | > |Regarding your issue, as you are running with JDK11, I guess you have to add > -- > |add-modules java.security.jgss to avoid the NoClassDefFoundException. > | > |Thanks anyway for your feedback, much appreciated. > | > |Regards > |JB > | > |> Le 26 sept. 2021 à 12:00, jgfrm a écrit : > |> > |> Hi Jean-Baptiste, > |> > |> I managed to start (well not completely) my spring application. > |> However, while starting up, I get an exception: > |> > |> 11:43:03.148 [main] ERROR o.s.boot.SpringApplication:837 - Application > |> run failed > |> org.springframework.context.ApplicationContextException: Unable to > |> start web server; nested exception is java.lang.NoClassDefFoundError: > |> org/ietf/jgss/GSSException > |> > |> Any ideas? > |> > |> Also, I had to make modifications in > |SpringBootApplicationManagerService/start: > |> > |> try { > |>Thread.currentThread().setContextClassLoader(classLoader); > |>// disable tomcat stream handler > |>/* There is no TomcatURLStreamHandlerFactory in my spring jar > |>final Method tomcat = > |classLoader.loadClass("org.apache.catalina.webresources.TomcatURLStream > |HandlerFactory").getMethod("disable"); > |>if (!tomcat.isBridge()) { > |>tomcat.setAccessible(true); > |>} > |>tomcat.invoke(null, null); > |> */ > |>// invoke spring boot main > |>final Method main = > |classLoader.loadClass("org.springframework.boot.loader.JarLauncher").getM > |ethod("main", String[].class); > |>main.setAccessible(true); > |>log.info("Call JarLauncher"); > |>if (properties.get("args") != null) { > |>log.info("Call JarLauncher with args"); > |>main.invoke(null, new Object[]{ properties.get("args") }); > |>} else { > |>log.info("Call JarLauncher without args"); > |>main.invoke(null, new Object[]{new String[0]}); // the > original invoke > |did not work for me > |>} > |>} finally { > |>Thread.currentThread().setContextClassLoader(original); > |>} > |> > |> Further details: > |> - openjdk version "11.0.12" 2021-07-20 > |> - invocation: > |> java -cp > |> ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-test-1 > |> .0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/tar > |> get/spring-boot-application-manager-5.0-SNAPSHOT.jar > |> -Dkaraf.config=src/main/resources/karaf.json Main > |> > |> Main.java: > |> ### > |> public class Main { > |>public static void main(String[] args){ > |>System.out.println("Starting Karaf"); > |>Karaf karaf = Karaf.builder().build(); > |>karaf.start(); > |>} > |> } > |> ### > |> > |> Best, > |> > |> -- Jaap > |> > |> |-Oorspronkelijk bericht- > |> |Van: Jean-Baptiste Onofré > |> |Verzonden: vrijdag 24 september 2021 10:34 > |> |Aan: user@karaf.apache.org > |> |Onderwerp: Re: Karaf 5 >
RE: Karaf 5
Hi JB, Fully understand that it is still work in progress. Regarding the .NoClassDefFoundError: org/ietf/jgss/GSSException --add-modules java.security.jgss does not solve it? Is it a class loader problem? Best, -- Jaap |-Oorspronkelijk bericht- |Van: Jean-Baptiste Onofre |Verzonden: zondag 26 september 2021 14:20 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Hi Jaap, | |First, maybe I was not clean in my presentation: Karaf 5 is still under |development and so, everything is not yet ready. |As said, I will “move” the code to Apache Karaf repo as soon as I consider I |have something clean and running. | |Anyway, about your email, I will check. Today my focus is on the |OsgiApplicationManager to be Karaf 4 compliant. |I also have to improve the Karaf Config service. | |By the way, you don’t need your own Main, just use the repackage with |regular provided Main (you can take a look on the K4 assembly repackage as |an example). I will create a gradle/maven plugin with repackage. | |Regarding your issue, as you are running with JDK11, I guess you have to add -- |add-modules java.security.jgss to avoid the NoClassDefFoundException. | |Thanks anyway for your feedback, much appreciated. | |Regards |JB | |> Le 26 sept. 2021 à 12:00, jgfrm a écrit : |> |> Hi Jean-Baptiste, |> |> I managed to start (well not completely) my spring application. |> However, while starting up, I get an exception: |> |> 11:43:03.148 [main] ERROR o.s.boot.SpringApplication:837 - Application |> run failed |> org.springframework.context.ApplicationContextException: Unable to |> start web server; nested exception is java.lang.NoClassDefFoundError: |> org/ietf/jgss/GSSException |> |> Any ideas? |> |> Also, I had to make modifications in |SpringBootApplicationManagerService/start: |> |> try { |>Thread.currentThread().setContextClassLoader(classLoader); |>// disable tomcat stream handler |>/* There is no TomcatURLStreamHandlerFactory in my spring jar |>final Method tomcat = |classLoader.loadClass("org.apache.catalina.webresources.TomcatURLStream |HandlerFactory").getMethod("disable"); |>if (!tomcat.isBridge()) { |>tomcat.setAccessible(true); |>} |>tomcat.invoke(null, null); |> */ |>// invoke spring boot main |>final Method main = |classLoader.loadClass("org.springframework.boot.loader.JarLauncher").getM |ethod("main", String[].class); |>main.setAccessible(true); |>log.info("Call JarLauncher"); |>if (properties.get("args") != null) { |>log.info("Call JarLauncher with args"); |>main.invoke(null, new Object[]{ properties.get("args") }); |>} else { |>log.info("Call JarLauncher without args"); |>main.invoke(null, new Object[]{new String[0]}); // the original invoke |did not work for me |>} |>} finally { |>Thread.currentThread().setContextClassLoader(original); |>} |> |> Further details: |> - openjdk version "11.0.12" 2021-07-20 |> - invocation: |> java -cp |> ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-test-1 |> .0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/tar |> get/spring-boot-application-manager-5.0-SNAPSHOT.jar |> -Dkaraf.config=src/main/resources/karaf.json Main |> |> Main.java: |> ### |> public class Main { |>public static void main(String[] args){ |>System.out.println("Starting Karaf"); |> Karaf karaf = Karaf.builder().build(); |>karaf.start(); |>} |> } |> ### |> |> Best, |> |> -- Jaap |> |> |-Oorspronkelijk bericht- |> |Van: Jean-Baptiste Onofré |> |Verzonden: vrijdag 24 september 2021 10:34 |> |Aan: user@karaf.apache.org |> |Onderwerp: Re: Karaf 5 |> | |> |Hi Jaap, |> | |> |The presentation is available here: |> | |> ||https://docs.google.com/presentation/d/1nDqd4oVbrggTDlwrzWc8zEdahKhc |S |> |VZJjlPk5FPxfBE/edit?usp=sharing |> | |> |Karaf 5 WIP is available here: |> | |> |https://github.com/jbonofre/karaf5 |> | |> |I'm available on Slack or by email if you wanna chat about Karaf5. |> | |> |Regards |> |JB |> | |> |On 24/09/2021 10:06, jgfrm wrote: |> |> Hi, |> |> |> |> I have two questions about Karaf 5: |> |> - is the presentation by Onofre at ApacheConf online somewhere? |> |> - is it possible to explore Karaf 5 (or: what is there right now)? |> |> I am in particular interested in the Spring Boot functionality, as |> |> I have a Spring Boot application that I want to port to Karaf to |> |> support dynamic loading of components. I have found the github repo |> |> of Onofre, but it is unclear to me how e.g. to start Karaf. |> |> |> |> Best, |> |> |> |> -- Jaap |> |> |>
Re: Karaf 5
Hi Jaap, First, maybe I was not clean in my presentation: Karaf 5 is still under development and so, everything is not yet ready. As said, I will “move” the code to Apache Karaf repo as soon as I consider I have something clean and running. Anyway, about your email, I will check. Today my focus is on the OsgiApplicationManager to be Karaf 4 compliant. I also have to improve the Karaf Config service. By the way, you don’t need your own Main, just use the repackage with regular provided Main (you can take a look on the K4 assembly repackage as an example). I will create a gradle/maven plugin with repackage. Regarding your issue, as you are running with JDK11, I guess you have to add --add-modules java.security.jgss to avoid the NoClassDefFoundException. Thanks anyway for your feedback, much appreciated. Regards JB > Le 26 sept. 2021 à 12:00, jgfrm a écrit : > > Hi Jean-Baptiste, > > I managed to start (well not completely) my spring application. > However, while starting up, I get an exception: > > 11:43:03.148 [main] ERROR o.s.boot.SpringApplication:837 - Application run > failed > org.springframework.context.ApplicationContextException: Unable to start web > server; nested exception is java.lang.NoClassDefFoundError: > org/ietf/jgss/GSSException > > Any ideas? > > Also, I had to make modifications in > SpringBootApplicationManagerService/start: > > try { >Thread.currentThread().setContextClassLoader(classLoader); >// disable tomcat stream handler >/* There is no TomcatURLStreamHandlerFactory in my spring jar >final Method tomcat = > classLoader.loadClass("org.apache.catalina.webresources.TomcatURLStreamHandlerFactory").getMethod("disable"); >if (!tomcat.isBridge()) { >tomcat.setAccessible(true); >} >tomcat.invoke(null, null); > */ >// invoke spring boot main >final Method main = > classLoader.loadClass("org.springframework.boot.loader.JarLauncher").getMethod("main", > String[].class); >main.setAccessible(true); >log.info("Call JarLauncher"); >if (properties.get("args") != null) { >log.info("Call JarLauncher with args"); >main.invoke(null, new Object[]{ properties.get("args") }); >} else { >log.info("Call JarLauncher without args"); >main.invoke(null, new Object[]{new String[0]}); // the > original invoke did not work for me >} >} finally { >Thread.currentThread().setContextClassLoader(original); >} > > Further details: > - openjdk version "11.0.12" 2021-07-20 > - invocation: > java -cp > ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-test-1.0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/target/spring-boot-application-manager-5.0-SNAPSHOT.jar > -Dkaraf.config=src/main/resources/karaf.json Main > > Main.java: > ### > public class Main { >public static void main(String[] args){ >System.out.println("Starting Karaf"); >Karaf karaf = Karaf.builder().build(); >karaf.start(); >} > } > ### > > Best, > > -- Jaap > > |-Oorspronkelijk bericht----- > |Van: Jean-Baptiste Onofré > |Verzonden: vrijdag 24 september 2021 10:34 > |Aan: user@karaf.apache.org > |Onderwerp: Re: Karaf 5 > | > |Hi Jaap, > | > |The presentation is available here: > | > |https://docs.google.com/presentation/d/1nDqd4oVbrggTDlwrzWc8zEdahKhcS > |VZJjlPk5FPxfBE/edit?usp=sharing > | > |Karaf 5 WIP is available here: > | > |https://github.com/jbonofre/karaf5 > | > |I'm available on Slack or by email if you wanna chat about Karaf5. > | > |Regards > |JB > | > |On 24/09/2021 10:06, jgfrm wrote: > |> Hi, > |> > |> I have two questions about Karaf 5: > |> - is the presentation by Onofre at ApacheConf online somewhere? > |> - is it possible to explore Karaf 5 (or: what is there right now)? I > |> am in particular interested in the Spring Boot functionality, as I > |> have a Spring Boot application that I want to port to Karaf to support > |> dynamic loading of components. I have found the github repo of Onofre, > |> but it is unclear to me how e.g. to start Karaf. > |> > |> Best, > |> > |> -- Jaap > |> >
RE: Karaf 5
Hi Jean-Baptiste, I managed to start (well not completely) my spring application. However, while starting up, I get an exception: 11:43:03.148 [main] ERROR o.s.boot.SpringApplication:837 - Application run failed org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException Any ideas? Also, I had to make modifications in SpringBootApplicationManagerService/start: try { Thread.currentThread().setContextClassLoader(classLoader); // disable tomcat stream handler /* There is no TomcatURLStreamHandlerFactory in my spring jar final Method tomcat = classLoader.loadClass("org.apache.catalina.webresources.TomcatURLStreamHandlerFactory").getMethod("disable"); if (!tomcat.isBridge()) { tomcat.setAccessible(true); } tomcat.invoke(null, null); */ // invoke spring boot main final Method main = classLoader.loadClass("org.springframework.boot.loader.JarLauncher").getMethod("main", String[].class); main.setAccessible(true); log.info("Call JarLauncher"); if (properties.get("args") != null) { log.info("Call JarLauncher with args"); main.invoke(null, new Object[]{ properties.get("args") }); } else { log.info("Call JarLauncher without args"); main.invoke(null, new Object[]{new String[0]}); // the original invoke did not work for me } } finally { Thread.currentThread().setContextClassLoader(original); } Further details: - openjdk version "11.0.12" 2021-07-20 - invocation: java -cp ../karaf5/assemblies/k4/target/k4-5.0-SNAPSHOT.jar:target/e3web-test-1.0-SNAPSHOT.jar:../karaf5/services/spring-boot-application-manager/target/spring-boot-application-manager-5.0-SNAPSHOT.jar -Dkaraf.config=src/main/resources/karaf.json Main Main.java: ### public class Main { public static void main(String[] args){ System.out.println("Starting Karaf"); Karaf karaf = Karaf.builder().build(); karaf.start(); } } ### Best, -- Jaap |-Oorspronkelijk bericht- |Van: Jean-Baptiste Onofré |Verzonden: vrijdag 24 september 2021 10:34 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Hi Jaap, | |The presentation is available here: | |https://docs.google.com/presentation/d/1nDqd4oVbrggTDlwrzWc8zEdahKhcS |VZJjlPk5FPxfBE/edit?usp=sharing | |Karaf 5 WIP is available here: | |https://github.com/jbonofre/karaf5 | |I'm available on Slack or by email if you wanna chat about Karaf5. | |Regards |JB | |On 24/09/2021 10:06, jgfrm wrote: |> Hi, |> |> I have two questions about Karaf 5: |> - is the presentation by Onofre at ApacheConf online somewhere? |> - is it possible to explore Karaf 5 (or: what is there right now)? I |> am in particular interested in the Spring Boot functionality, as I |> have a Spring Boot application that I want to port to Karaf to support |> dynamic loading of components. I have found the github repo of Onofre, |> but it is unclear to me how e.g. to start Karaf. |> |> Best, |> |> -- Jaap |>
RE: Karaf 5
Excellent, many thanks. I will first view your presentation (couldn't make it when it was presented unfortunately) and I case of questions come back to best. Best, -- Jaa[ |-Oorspronkelijk bericht- |Van: Jean-Baptiste Onofré |Verzonden: vrijdag 24 september 2021 10:34 |Aan: user@karaf.apache.org |Onderwerp: Re: Karaf 5 | |Hi Jaap, | |The presentation is available here: | |https://docs.google.com/presentation/d/1nDqd4oVbrggTDlwrzWc8zEdahKhcS |VZJjlPk5FPxfBE/edit?usp=sharing | |Karaf 5 WIP is available here: | |https://github.com/jbonofre/karaf5 | |I'm available on Slack or by email if you wanna chat about Karaf5. | |Regards |JB | |On 24/09/2021 10:06, jgfrm wrote: |> Hi, |> |> I have two questions about Karaf 5: |> - is the presentation by Onofre at ApacheConf online somewhere? |> - is it possible to explore Karaf 5 (or: what is there right now)? I |> am in particular interested in the Spring Boot functionality, as I |> have a Spring Boot application that I want to port to Karaf to support |> dynamic loading of components. I have found the github repo of Onofre, |> but it is unclear to me how e.g. to start Karaf. |> |> Best, |> |> -- Jaap |>
Re: Karaf 5
Hi Jaap, The presentation is available here: https://docs.google.com/presentation/d/1nDqd4oVbrggTDlwrzWc8zEdahKhcSVZJjlPk5FPxfBE/edit?usp=sharing Karaf 5 WIP is available here: https://github.com/jbonofre/karaf5 I'm available on Slack or by email if you wanna chat about Karaf5. Regards JB On 24/09/2021 10:06, jgfrm wrote: Hi, I have two questions about Karaf 5: - is the presentation by Onofre at ApacheConf online somewhere? - is it possible to explore Karaf 5 (or: what is there right now)? I am in particular interested in the Spring Boot functionality, as I have a Spring Boot application that I want to port to Karaf to support dynamic loading of components. I have found the github repo of Onofre, but it is unclear to me how e.g. to start Karaf. Best, -- Jaap
Karaf 5
Hi, I have two questions about Karaf 5: - is the presentation by Onofre at ApacheConf online somewhere? - is it possible to explore Karaf 5 (or: what is there right now)? I am in particular interested in the Spring Boot functionality, as I have a Spring Boot application that I want to port to Karaf to support dynamic loading of components. I have found the github repo of Onofre, but it is unclear to me how e.g. to start Karaf. Best, -- Jaap
Re: [X-Mas Gift] Panel discussion about Karaf 5
Hi JB, sounds great. I'll have to keep an eye on 5 then. Thanks. Mat frëndleche Gréiss, Mit freundlichen Grüßen, Meilleures salutations, Kind regards, Alex Weirig Responsable Technique Ville de Luxembourg Service Enseignement Centre Technolink *Tel* +352 4796 - 6127 *Fax* +352 42 88 81 *Email* alex.wei...@technolink.lu <mailto:alex.wei...@technolink.lu> www.vdl.lu <http://www.vdl.lu> // www.technolink.lu <http://www.technolink.lu> Centre Technolink 2, rue Charles de Tornaco L-2623 LUXEMBOURG //indoors.this.blesses <https://map.what3words.com/indoors.this.blesses> //schaufel.besten.kopie <https://map.what3words.com/schaufel.besten.kopie> //supposons.levage.venger <https://map.what3words.com/supposons.levage.venger> On 17/12/2020 17:08, Jean-Baptiste Onofre wrote: Hi, That’s exactly the purpose of extension in replacement of features: Karaf will provides kind of "extension store", with "approved" functionalities. You can see a extensions proto set here: https://github.com/jbonofre/karaf5/tree/main/extensions <https://github.com/jbonofre/karaf5/tree/main/extensions> It’s exactly what you are describing: you have the extension market store, and I will also add "extension bom" for developers (for now, extensions are runtime). Here’s the code to start Karaf with extension: KarafConfig config = KarafConfig.builder() .homeDirectory("karaf") .dataDirectory("karaf/data") .cacheDirectory("karaf/data/cache") .build(); karaf = Karaf.build(config); karaf.init(); karaf.addExtension("mvn:org.apache.karaf.extensions/log/5.0.0-SNAPSHOT"); Then, you can simple run karaf with java -jar my-karaf.jar With this approach, it’s very easy to have an UI to create this code. Regards JB Le 17 déc. 2020 à 14:29, Alex Weirig <mailto:alex.wei...@technolink.lu>> a écrit : Dear all, imho, one of the biggest issues with (karaf) is that you need to know where you get the right bundles/features from. If I want to do JAX-RS with Whiteboard, what repo do I need to add? What version? How do I even know I need to add a repo and where to find the right address for that repo? I'm sure you all have been through trying to figure out what you need to add to karaf in order to have it support the features you need. Once you've done it, you better take note of it, because next time you setup a new karaf instance you might have to figure it out again. But maybe in the mean time, Aries has changed a couple of things, versions have changed (for sure) etc. Isn't it so much easier on our smartphones and even computers? ... We go to the app store, search for an app and once we've bought it, if we want to re-install it, it's still there, probably even with a new version. Now, I'm not asking for a karaf app store but what about a "wizard" where you can pick from some of the most common use cases we all love to see running in our karaf instances. This could be some kind of a list: * DS * Webconsole * JAX-RS with Whiteboard * JPA ... * Blueprint ... * your favorites here and you pick what you need and karaf (somehow) knows what repos to add and what to install from the repos. Seconds later, you get your new karaf instance up and running. Is there anyone else thinking that this could be useful or am I the only one struggling with these issues? That would be my Xmas wish for Karaf 5.x. Merry Xmas and a wonderful healthy Happy New Year 2021 to all of you. Take care and stay healthy. Mat frëndleche Gréiss, Mit freundlichen Grüßen, Meilleures salutations, Kind regards, Alex Weirig Responsable Technique Ville de Luxembourg Service Enseignement Centre Technolink *Tel* +352 4796 - 6127 *Fax* +352 42 88 81 *Email* alex.wei...@technolink.lu <mailto:alex.wei...@technolink.lu> www.vdl.lu <http://www.vdl.lu/> // www.technolink.lu <http://www.technolink.lu/> Centre Technolink 2, rue Charles de Tornaco L-2623 LUXEMBOURG //indoors.this.blesses <https://map.what3words.com/indoors.this.blesses> //schaufel.besten.kopie <https://map.what3words.com/schaufel.besten.kopie> //supposons.levage.venger <https://map.what3words.com/supposons.levage.venger> On 15/12/2020 18:32, Jean-Baptiste Onofre wrote: Hi guys, Maybe some of you know that I started to work on Karaf 5. I have something that it’s almost "usable". Before sending a global discussion thread on the mailing list, I would like to evaluate the ideas & big changes I did. I would like to know if some of you would be interested by a panel discussion call to introduce Karaf 5 (limited audience at first step). The agenda of this call would be: 1. Pros/Cons about Karaf as it is today 2. Concepts in Karaf 5 (module, extension, …) 3. Building & running 4. Live dem
Re: [X-Mas Gift] Panel discussion about Karaf 5
Hi, That’s exactly the purpose of extension in replacement of features: Karaf will provides kind of "extension store", with "approved" functionalities. You can see a extensions proto set here: https://github.com/jbonofre/karaf5/tree/main/extensions <https://github.com/jbonofre/karaf5/tree/main/extensions> It’s exactly what you are describing: you have the extension market store, and I will also add "extension bom" for developers (for now, extensions are runtime). Here’s the code to start Karaf with extension: KarafConfig config = KarafConfig.builder() .homeDirectory("karaf") .dataDirectory("karaf/data") .cacheDirectory("karaf/data/cache") .build(); karaf = Karaf.build(config); karaf.init(); karaf.addExtension("mvn:org.apache.karaf.extensions/log/5.0.0-SNAPSHOT"); Then, you can simple run karaf with java -jar my-karaf.jar With this approach, it’s very easy to have an UI to create this code. Regards JB > Le 17 déc. 2020 à 14:29, Alex Weirig a écrit : > > Dear all, > > imho, one of the biggest issues with (karaf) is that you need to know where > you get the right bundles/features from. If I want to do JAX-RS with > Whiteboard, what repo do I need to add? What version? How do I even know I > need to add a repo and where to find the right address for that repo? > > > > I'm sure you all have been through trying to figure out what you need to add > to karaf in order to have it support the features you need. > > Once you've done it, you better take note of it, because next time you setup > a new karaf instance you might have to figure it out again. But maybe in the > mean time, Aries has changed a couple of things, versions have changed (for > sure) etc. > > > > Isn't it so much easier on our smartphones and even computers? ... We go to > the app store, search for an app and once we've bought it, if we want to > re-install it, it's still there, probably even with a new version. > > > > Now, I'm not asking for a karaf app store but what about a "wizard" where you > can pick from some of the most common use cases we all love to see running in > our karaf instances. > > This could be some kind of a list: > > DS > Webconsole > JAX-RS with Whiteboard > JPA ... > Blueprint ... > your favorites here > and you pick what you need and karaf (somehow) knows what repos to add and > what to install from the repos. > > Seconds later, you get your new karaf instance up and running. > > > > Is there anyone else thinking that this could be useful or am I the only one > struggling with these issues? That would be my Xmas wish for Karaf 5.x. > > > > Merry Xmas and a wonderful healthy Happy New Year 2021 to all of you. Take > care and stay healthy. > > > Mat frëndleche Gréiss, > Mit freundlichen Grüßen, > Meilleures salutations, > Kind regards, > > Alex Weirig > Responsable Technique > Ville de Luxembourg > Service Enseignement > Centre Technolink > > Tel +352 4796 - 6127 > Fax +352 42 88 81 > Email alex.wei...@technolink.lu <mailto:alex.wei...@technolink.lu> > www.vdl.lu <http://www.vdl.lu/> // www.technolink.lu > <http://www.technolink.lu/> > > Centre Technolink > 2, rue Charles de Tornaco > L-2623 LUXEMBOURG > > indoors.this.blesses > <https://map.what3words.com/indoors.this.blesses>schaufel.besten.kopie > <https://map.what3words.com/schaufel.besten.kopie>supposons.levage.venger > <https://map.what3words.com/supposons.levage.venger> > On 15/12/2020 18:32, Jean-Baptiste Onofre wrote: >> Hi guys, >> >> Maybe some of you know that I started to work on Karaf 5. >> >> I have something that it’s almost "usable". >> >> Before sending a global discussion thread on the mailing list, I would like >> to evaluate the ideas & big changes I did. >> >> I would like to know if some of you would be interested by a panel >> discussion call to introduce Karaf 5 (limited audience at first step). >> >> The agenda of this call would be: >> 1. Pros/Cons about Karaf as it is today >> 2. Concepts in Karaf 5 (module, extension, …) >> 3. Building & running >> 4. Live demo >> >> It could be recorded/webinar style (not necessary live call) for about 20 >> people at first step (both Karaf developers and users). >> The purpose is to evaluate the direction. >> >> Thoughts ? >> Who would be interested ? >> >> Thanks, >> Regards >> JB
Re: [X-Mas Gift] Panel discussion about Karaf 5
Thank you JB, I'm waiting for the schedule proposal then. Regarards czw., 17 gru 2020 o 09:07 Jean-Baptiste Onofre napisał(a): > Hi Daniel, > > I don’t know yet. My first intention was to register a session and share > with you. However, I received several people who wants to live chat. So I’m > checking between work and off agenda to find some slots to propose to you. > > It might be a first introduction email before Christmas (for people who > replied to my email) and then a live session (google meet for instance). > > Regards > JB > > Le 17 déc. 2020 à 07:45, Daniel Las a écrit : > > Hi, > > I'd like to attend too. What's the planned schedule? > > Regards > > wt., 15 gru 2020 o 18:32 Jean-Baptiste Onofre > napisał(a): > >> Hi guys, >> >> Maybe some of you know that I started to work on Karaf 5. >> >> I have something that it’s almost "usable". >> >> Before sending a global discussion thread on the mailing list, I would >> like to evaluate the ideas & big changes I did. >> >> I would like to know if some of you would be interested by a panel >> discussion call to introduce Karaf 5 (limited audience at first step). >> >> The agenda of this call would be: >> 1. Pros/Cons about Karaf as it is today >> 2. Concepts in Karaf 5 (module, extension, …) >> 3. Building & running >> 4. Live demo >> >> It could be recorded/webinar style (not necessary live call) for about 20 >> people at first step (both Karaf developers and users). >> The purpose is to evaluate the direction. >> >> Thoughts ? >> Who would be interested ? >> >> Thanks, >> Regards >> JB > > > > -- > Daniel Łaś > CTO at Empirica S.A. > +48 695 616181 > > > -- Daniel Łaś CTO at Empirica S.A. +48 695 616181
Re: [X-Mas Gift] Panel discussion about Karaf 5
Dear all, imho, one of the biggest issues with (karaf) is that you need to know where you get the right bundles/features from. If I want to do JAX-RS with Whiteboard, what repo do I need to add? What version? How do I even know I need to add a repo and where to find the right address for that repo? I'm sure you all have been through trying to figure out what you need to add to karaf in order to have it support the features you need. Once you've done it, you better take note of it, because next time you setup a new karaf instance you might have to figure it out again. But maybe in the mean time, Aries has changed a couple of things, versions have changed (for sure) etc. Isn't it so much easier on our smartphones and even computers? ... We go to the app store, search for an app and once we've bought it, if we want to re-install it, it's still there, probably even with a new version. Now, I'm not asking for a karaf app store but what about a "wizard" where you can pick from some of the most common use cases we all love to see running in our karaf instances. This could be some kind of a list: * DS * Webconsole * JAX-RS with Whiteboard * JPA ... * Blueprint ... * your favorites here and you pick what you need and karaf (somehow) knows what repos to add and what to install from the repos. Seconds later, you get your new karaf instance up and running. Is there anyone else thinking that this could be useful or am I the only one struggling with these issues? That would be my Xmas wish for Karaf 5.x. Merry Xmas and a wonderful healthy Happy New Year 2021 to all of you. Take care and stay healthy. Mat frëndleche Gréiss, Mit freundlichen Grüßen, Meilleures salutations, Kind regards, Alex Weirig Responsable Technique Ville de Luxembourg Service Enseignement Centre Technolink *Tel* +352 4796 - 6127 *Fax* +352 42 88 81 *Email* alex.wei...@technolink.lu <mailto:alex.wei...@technolink.lu> www.vdl.lu <http://www.vdl.lu> // www.technolink.lu <http://www.technolink.lu> Centre Technolink 2, rue Charles de Tornaco L-2623 LUXEMBOURG //indoors.this.blesses <https://map.what3words.com/indoors.this.blesses> //schaufel.besten.kopie <https://map.what3words.com/schaufel.besten.kopie> //supposons.levage.venger <https://map.what3words.com/supposons.levage.venger> On 15/12/2020 18:32, Jean-Baptiste Onofre wrote: Hi guys, Maybe some of you know that I started to work on Karaf 5. I have something that it’s almost "usable". Before sending a global discussion thread on the mailing list, I would like to evaluate the ideas & big changes I did. I would like to know if some of you would be interested by a panel discussion call to introduce Karaf 5 (limited audience at first step). The agenda of this call would be: 1. Pros/Cons about Karaf as it is today 2. Concepts in Karaf 5 (module, extension, …) 3. Building & running 4. Live demo It could be recorded/webinar style (not necessary live call) for about 20 people at first step (both Karaf developers and users). The purpose is to evaluate the direction. Thoughts ? Who would be interested ? Thanks, Regards JB <>
Re: [X-Mas Gift] Panel discussion about Karaf 5
Hi Daniel, I don’t know yet. My first intention was to register a session and share with you. However, I received several people who wants to live chat. So I’m checking between work and off agenda to find some slots to propose to you. It might be a first introduction email before Christmas (for people who replied to my email) and then a live session (google meet for instance). Regards JB > Le 17 déc. 2020 à 07:45, Daniel Las a écrit : > > Hi, > > I'd like to attend too. What's the planned schedule? > > Regards > > wt., 15 gru 2020 o 18:32 Jean-Baptiste Onofre <mailto:j...@nanthrax.net>> napisał(a): > Hi guys, > > Maybe some of you know that I started to work on Karaf 5. > > I have something that it’s almost "usable". > > Before sending a global discussion thread on the mailing list, I would like > to evaluate the ideas & big changes I did. > > I would like to know if some of you would be interested by a panel discussion > call to introduce Karaf 5 (limited audience at first step). > > The agenda of this call would be: > 1. Pros/Cons about Karaf as it is today > 2. Concepts in Karaf 5 (module, extension, …) > 3. Building & running > 4. Live demo > > It could be recorded/webinar style (not necessary live call) for about 20 > people at first step (both Karaf developers and users). > The purpose is to evaluate the direction. > > Thoughts ? > Who would be interested ? > > Thanks, > Regards > JB > > > -- > Daniel Łaś > CTO at Empirica S.A. > +48 695 616181
Re: [X-Mas Gift] Panel discussion about Karaf 5
Hi, I'd like to attend too. What's the planned schedule? Regards wt., 15 gru 2020 o 18:32 Jean-Baptiste Onofre napisał(a): > Hi guys, > > Maybe some of you know that I started to work on Karaf 5. > > I have something that it’s almost "usable". > > Before sending a global discussion thread on the mailing list, I would > like to evaluate the ideas & big changes I did. > > I would like to know if some of you would be interested by a panel > discussion call to introduce Karaf 5 (limited audience at first step). > > The agenda of this call would be: > 1. Pros/Cons about Karaf as it is today > 2. Concepts in Karaf 5 (module, extension, …) > 3. Building & running > 4. Live demo > > It could be recorded/webinar style (not necessary live call) for about 20 > people at first step (both Karaf developers and users). > The purpose is to evaluate the direction. > > Thoughts ? > Who would be interested ? > > Thanks, > Regards > JB -- Daniel Łaś CTO at Empirica S.A. +48 695 616181
Re: [X-Mas Gift] Panel discussion about Karaf 5
Hello JB, I'm interested. Thank for your great work again. Michael. From: Jean-Baptiste Onofre Sent: Tuesday, December 15, 2020, 6:32 PM To: d...@karaf.apache.org; user@karaf.apache.org Subject: [X-Mas Gift] Panel discussion about Karaf 5 Hi guys, Maybe some of you know that I started to work on Karaf 5. I have something that it’s almost "usable". Before sending a global discussion thread on the mailing list, I would like to evaluate the ideas & big changes I did. I would like to know if some of you would be interested by a panel discussion call to introduce Karaf 5 (limited audience at first step). The agenda of this call would be: 1. Pros/Cons about Karaf as it is today 2. Concepts in Karaf 5 (module, extension, …) 3. Building & running 4. Live demo It could be recorded/webinar style (not necessary live call) for about 20 people at first step (both Karaf developers and users). The purpose is to evaluate the direction. Thoughts ? Who would be interested ? Thanks, Regards JB
Re: [X-Mas Gift] Panel discussion about Karaf 5
Hi, I'm also happy to see all the user feedback around Karaf 5. Thanks guys to help us to make Karaf better! regards, François fpa...@apache.org Le 17/12/2020 à 06:06, Jean-Baptiste Onofre a écrit : > Thanks a lot guys for all your interest and positive feedback ! > > I will send an invite soon. > > Thanks ! > > Regards > JB > >> Le 15 déc. 2020 à 18:32, Jean-Baptiste Onofre a écrit : >> >> Hi guys, >> >> Maybe some of you know that I started to work on Karaf 5. >> >> I have something that it’s almost "usable". >> >> Before sending a global discussion thread on the mailing list, I would like >> to evaluate the ideas & big changes I did. >> >> I would like to know if some of you would be interested by a panel >> discussion call to introduce Karaf 5 (limited audience at first step). >> >> The agenda of this call would be: >> 1. Pros/Cons about Karaf as it is today >> 2. Concepts in Karaf 5 (module, extension, …) >> 3. Building & running >> 4. Live demo >> >> It could be recorded/webinar style (not necessary live call) for about 20 >> people at first step (both Karaf developers and users). >> The purpose is to evaluate the direction. >> >> Thoughts ? >> Who would be interested ? >> >> Thanks, >> Regards >> JB
Re: [X-Mas Gift] Panel discussion about Karaf 5
Thanks a lot guys for all your interest and positive feedback ! I will send an invite soon. Thanks ! Regards JB > Le 15 déc. 2020 à 18:32, Jean-Baptiste Onofre a écrit : > > Hi guys, > > Maybe some of you know that I started to work on Karaf 5. > > I have something that it’s almost "usable". > > Before sending a global discussion thread on the mailing list, I would like > to evaluate the ideas & big changes I did. > > I would like to know if some of you would be interested by a panel discussion > call to introduce Karaf 5 (limited audience at first step). > > The agenda of this call would be: > 1. Pros/Cons about Karaf as it is today > 2. Concepts in Karaf 5 (module, extension, …) > 3. Building & running > 4. Live demo > > It could be recorded/webinar style (not necessary live call) for about 20 > people at first step (both Karaf developers and users). > The purpose is to evaluate the direction. > > Thoughts ? > Who would be interested ? > > Thanks, > Regards > JB
Re: [X-Mas Gift] Panel discussion about Karaf 5
Hello, I would like to participate very much indeed. Thanks, Matteo > On 15 Dec 2020, at 18:32, Jean-Baptiste Onofre wrote: > > Hi guys, > > Maybe some of you know that I started to work on Karaf 5. > > I have something that it’s almost "usable". > > Before sending a global discussion thread on the mailing list, I would like > to evaluate the ideas & big changes I did. > > I would like to know if some of you would be interested by a panel discussion > call to introduce Karaf 5 (limited audience at first step). > > The agenda of this call would be: > 1. Pros/Cons about Karaf as it is today > 2. Concepts in Karaf 5 (module, extension, …) > 3. Building & running > 4. Live demo > > It could be recorded/webinar style (not necessary live call) for about 20 > people at first step (both Karaf developers and users). > The purpose is to evaluate the direction. > > Thoughts ? > Who would be interested ? > > Thanks, > Regards > JB
Re: [X-Mas Gift] Panel discussion about Karaf 5
Yep! This would be great, please include me on the invite. > On Dec 15, 2020, at 11:32 AM, Jean-Baptiste Onofre wrote: > > Hi guys, > > Maybe some of you know that I started to work on Karaf 5. > > I have something that it’s almost "usable". > > Before sending a global discussion thread on the mailing list, I would like > to evaluate the ideas & big changes I did. > > I would like to know if some of you would be interested by a panel discussion > call to introduce Karaf 5 (limited audience at first step). > > The agenda of this call would be: > 1. Pros/Cons about Karaf as it is today > 2. Concepts in Karaf 5 (module, extension, …) > 3. Building & running > 4. Live demo > > It could be recorded/webinar style (not necessary live call) for about 20 > people at first step (both Karaf developers and users). > The purpose is to evaluate the direction. > > Thoughts ? > Who would be interested ? > > Thanks, > Regards > JB
Re: [X-Mas Gift] Panel discussion about Karaf 5
Hi J.B. :) as you already teasered me, I would love to join ;) Kind regards, Thomas Oleg Cohen schrieb am Di., 15. Dez. 2020, 19:03: > Hi JB, > > Great news! This is awesome. I would love to join. > > Best regards, > Oleg > > Sent from my iPhone > > > On Dec 15, 2020, at 12:32 PM, Jean-Baptiste Onofre > wrote: > > > > Hi guys, > > > > Maybe some of you know that I started to work on Karaf 5. > > > > I have something that it’s almost "usable". > > > > Before sending a global discussion thread on the mailing list, I would > like to evaluate the ideas & big changes I did. > > > > I would like to know if some of you would be interested by a panel > discussion call to introduce Karaf 5 (limited audience at first step). > > > > The agenda of this call would be: > > 1. Pros/Cons about Karaf as it is today > > 2. Concepts in Karaf 5 (module, extension, …) > > 3. Building & running > > 4. Live demo > > > > It could be recorded/webinar style (not necessary live call) for about > 20 people at first step (both Karaf developers and users). > > The purpose is to evaluate the direction. > > > > Thoughts ? > > Who would be interested ? > > > > Thanks, > > Regards > > JB >
Re: [X-Mas Gift] Panel discussion about Karaf 5
Hi JB, Great news! This is awesome. I would love to join. Best regards, Oleg Sent from my iPhone > On Dec 15, 2020, at 12:32 PM, Jean-Baptiste Onofre wrote: > > Hi guys, > > Maybe some of you know that I started to work on Karaf 5. > > I have something that it’s almost "usable". > > Before sending a global discussion thread on the mailing list, I would like > to evaluate the ideas & big changes I did. > > I would like to know if some of you would be interested by a panel discussion > call to introduce Karaf 5 (limited audience at first step). > > The agenda of this call would be: > 1. Pros/Cons about Karaf as it is today > 2. Concepts in Karaf 5 (module, extension, …) > 3. Building & running > 4. Live demo > > It could be recorded/webinar style (not necessary live call) for about 20 > people at first step (both Karaf developers and users). > The purpose is to evaluate the direction. > > Thoughts ? > Who would be interested ? > > Thanks, > Regards > JB
[X-Mas Gift] Panel discussion about Karaf 5
Hi guys, Maybe some of you know that I started to work on Karaf 5. I have something that it’s almost "usable". Before sending a global discussion thread on the mailing list, I would like to evaluate the ideas & big changes I did. I would like to know if some of you would be interested by a panel discussion call to introduce Karaf 5 (limited audience at first step). The agenda of this call would be: 1. Pros/Cons about Karaf as it is today 2. Concepts in Karaf 5 (module, extension, …) 3. Building & running 4. Live demo It could be recorded/webinar style (not necessary live call) for about 20 people at first step (both Karaf developers and users). The purpose is to evaluate the direction. Thoughts ? Who would be interested ? Thanks, Regards JB