Hi, Give me some time to complete Cave and I will take a look. The issue is not related to KAR, it's around the features resolver. I think it could be a race condition or a mistake in the requirements (as I didn't reproduce the issue, and we use the same approach in examples without problem).
I keep you posted asap. Regards JB On 04/09/2018 13:47, Francois Papon wrote: > Yes, I also tried to install the feature manually (JB tips) outside of > the Kar but it didn't solve. > > May be I missed something in Felix for the registring of the component > in the componentFactory. > > regards, > > François Papon > fpa...@apache.org > > Le 04/09/2018 à 15:42, Milen Dyankov a écrit : >> Oh, you are right. The service is indeed there. I did a quick check >> earlier and couldn't find it (may have used the wrong command) and >> then I saw "effective:=active" which rings a bell about an old >> discussion here about this being or not being enforced in certain >> Karaf versions. >> On Mon, Sep 3, 2018 at 8:18 PM Thiago Moreira (timba) >> <tmoreira2...@gmail.com> wrote: >>> >>> Exactly! >>> >>> Thiago Moreira >>> +55 48 99911-6331 >>> >>> >>> On Mon, Sep 3, 2018 at 12:07 PM Francois Papon >>> <francois.pa...@openobject.fr> wrote: >>>> Hi, >>>> >>>> When I tried, the bundle "BotImpl" provided the service >>>> 'org.osgi.service.component.ComponentFactory', I can see it in the >>>> "services" command output. >>>> >>>> However it's not binded in the BotApplication by the @Reference. >>>> >>>> regards, >>>> >>>> François Papon >>>> fpa...@apache.org >>>> >>>> Le 03/09/2018 à 19:02, Jean-Baptiste Onofré a écrit : >>>>> Hi Milen, >>>>> >>>>> effective means that it expects a service available in the registry. So, >>>>> if ComponentFactory is preset in the registry (you can check with the ls >>>>> command), it should work via the feature. >>>>> >>>>> I will provide a fix to Thiago. >>>>> >>>>> Regards >>>>> JB >>>>> >>>>> On 03/09/2018 16:40, Milen Dyankov wrote: >>>>>> This is a shot it the dark and I'm sure JB will correct me if I'm >>>>>> wrong but I think it may be due to `effective:=active` directive. >>>>>> >>>>>> See, if you deploy the `scr` feature and your bundles, they are >>>>>> activated. But IMHO the application bundle shouldn't resolve because >>>>>> It has >>>>>> `Require-Capability: ... >>>>>> osgi.service;filter:="(objectClass=org.osgi.service.component.ComponentFactory)";effective:=active, >>>>>> .....` >>>>>> but there is no such service registered. >>>>>> >>>>>> Therefore my guess is that direct deployment of bundles ignores the >>>>>> requirement as it is `effective:=active` but it is enforced by the >>>>>> feature/kar resolver. >>>>>> >>>>>> Best, >>>>>> Milen >>>>>> On Mon, Sep 3, 2018 at 3:55 PM Francois Papon >>>>>> <francois.pa...@openobject.fr> wrote: >>>>>>> Hi, >>>>>>> >>>>>>> I tried yesterday and I'm able to reproduce after migrate on >>>>>>> maven-bundle-plugin, I will search more deeply for the >>>>>>> component-factory ;) >>>>>>> >>>>>>> regards, >>>>>>> >>>>>>> François Papon >>>>>>> fpa...@apache.org >>>>>>> >>>>>>> Le 03/09/2018 à 17:47, Thiago Moreira (timba) a écrit : >>>>>>> >>>>>>> >>>>>>> Hey guys, were you able to reproduce the problem? >>>>>>> >>>>>>> Thanks >>>>>>> >>>>>>> Thiago Moreira >>>>>>> +55 48 99911-6331 >>>>>>> >>>>>>> >>>>>>> On Sun, Sep 2, 2018 at 1:10 PM Jean-Baptiste Onofré <j...@nanthrax.net> >>>>>>> wrote: >>>>>>>> Some may see this as a pro, some as a cons ;) >>>>>>>> >>>>>>>> Anyway, maven-bundle-plugin uses bnd (library). The bnd plugin allows >>>>>>>> to >>>>>>>> delegate the headers definition in the specific file. >>>>>>>> >>>>>>>> maven-bundle-plugin defines a lot of default headers based on Maven. >>>>>>>> That's what I would like to check (the diff in the generated headers). >>>>>>>> >>>>>>>> Regards >>>>>>>> JB >>>>>>>> >>>>>>>> On 02/09/2018 17:25, Francois Papon wrote: >>>>>>>>> You don't have to declare things in a bnd.bnd file, you can define it >>>>>>>>> directly in the plugin configuration in your pom.xml like this : >>>>>>>>> >>>>>>>>> <plugin> >>>>>>>>> <groupId>org.apache.felix</groupId> >>>>>>>>> <artifactId>maven-bundle-plugin</artifactId> >>>>>>>>> <configuration> >>>>>>>>> <instructions> >>>>>>>>> <Export-Package> >>>>>>>>> org.apache.karaf.vineyard.registry.api >>>>>>>>> </Export-Package> >>>>>>>>> </instructions> >>>>>>>>> </configuration> >>>>>>>>> </plugin> >>>>>>>>> >>>>>>>>> regards, >>>>>>>>> >>>>>>>>> François Papon >>>>>>>>> fpa...@apache.org >>>>>>>>> >>>>>>>>> Le 02/09/2018 à 19:21, Thiago Moreira (timba) a écrit : >>>>>>>>>> What is the advantages in your point of view of bundle over bnd? >>>>>>>>>> Maybe I should start another thread... >>>>>>>>>> >>>>>>>>>> Thiago Moreira >>>>>>>>>> +55 48 99911-6331 >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Sun, Sep 2, 2018 at 12:12 PM Francois Papon >>>>>>>>>> <francois.pa...@openobject.fr <mailto:francois.pa...@openobject.fr>> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> Sorry, I missed it, I see it now :) >>>>>>>>>> >>>>>>>>>> @Component(service = Bot.class, factory = "bot.factory") >>>>>>>>>> public class BotImpl implements Bot { >>>>>>>>>> >>>>>>>>>> regards >>>>>>>>>> >>>>>>>>>> François Papon >>>>>>>>>> fpa...@apache.org <mailto:fpa...@apache.org> >>>>>>>>>> >>>>>>>>>> Le 02/09/2018 à 19:09, Francois Papon a écrit : >>>>>>>>>>> Ok, >>>>>>>>>>> >>>>>>>>>>> You should use the maven-bundle-plugin instead of the >>>>>>>>>>> bnd-plugin, >>>>>>>>>>> it's more convenient ;) >>>>>>>>>>> >>>>>>>>>>> Btw, I see that in your BotApplication class you are searching a >>>>>>>>>>> service with a component.factory property = bot.factory but I >>>>>>>>>>> can't see where you are registring this factory >>>>>>>>>>> >>>>>>>>>>> @Reference(target = "(component.factory=bot.factory)") >>>>>>>>>>> protected ComponentFactory factory; >>>>>>>>>>> >>>>>>>>>>> regards, >>>>>>>>>>> >>>>>>>>>>> François Papon >>>>>>>>>>> fpa...@apache.org <mailto:fpa...@apache.org> >>>>>>>>>>> Le 02/09/2018 à 19:01, Thiago Moreira (timba) a écrit : >>>>>>>>>>>> Nice! I already look the example. >>>>>>>>>>>> >>>>>>>>>>>> Thiago Moreira >>>>>>>>>>>> +55 48 99911-6331 >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Sun, Sep 2, 2018 at 11:57 AM Francois Papon >>>>>>>>>>>> <francois.pa...@openobject.fr >>>>>>>>>>>> <mailto:francois.pa...@openobject.fr>> wrote: >>>>>>>>>>>> >>>>>>>>>>>> I will take a look ;) >>>>>>>>>>>> >>>>>>>>>>>> You can also take a look on the Karaf SCR example to deal >>>>>>>>>>>> with scr. >>>>>>>>>>>> >>>>>>>>>>>> regards, >>>>>>>>>>>> >>>>>>>>>>>> François Papon >>>>>>>>>>>> fpa...@apache.org <mailto:fpa...@apache.org> >>>>>>>>>>>> >>>>>>>>>>>> Le 02/09/2018 à 18:01, Thiago Moreira (timba) a écrit : >>>>>>>>>>>>> Hey François, the project is available >>>>>>>>>>>>> here https://github.com/tmoreira2020/poc-osgi-whiteboard >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks >>>>>>>>>>>>> >>>>>>>>>>>>> Thiago Moreira >>>>>>>>>>>>> +55 48 99911-6331 >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> On Sun, Sep 2, 2018 at 10:45 AM francois.papon >>>>>>>>>>>>> <francois.pa...@openobject.fr >>>>>>>>>>>>> <mailto:francois.pa...@openobject.fr>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> Hi, >>>>>>>>>>>>> >>>>>>>>>>>>> Can you share your bundle and your feature ? >>>>>>>>>>>>> >>>>>>>>>>>>> Regards, >>>>>>>>>>>>> >>>>>>>>>>>>> François >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> Envoyé depuis mon smartphone Samsung Galaxy. >>>>>>>>>>>>> >>>>>>>>>>>>> -------- Message d'origine -------- >>>>>>>>>>>>> De : "Thiago Moreira (timba)" <tmoreira2...@gmail.com >>>>>>>>>>>>> <mailto:tmoreira2...@gmail.com>> >>>>>>>>>>>>> Date : 02/09/2018 16:14 (GMT+04:00) >>>>>>>>>>>>> À : user@karaf.apache.org >>>>>>>>>>>>> <mailto:user@karaf.apache.org> >>>>>>>>>>>>> Objet : Re: Unable to deploy a Karaf kar file >>>>>>>>>>>>> containing a ComponentFactory OSGi declarative service >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> I have tried with Karaf 4.2.1 without lucky. My >>>>>>>>>>>>> steps: >>>>>>>>>>>>> >>>>>>>>>>>>> 1. Unzip the bundle >>>>>>>>>>>>> 2. Start with karaf command >>>>>>>>>>>>> 3. Build the project with mvn clean install >>>>>>>>>>>>> 4. Install the kar file >>>>>>>>>>>>> 1. Copy the kar file >>>>>>>>>>>>> br.com.thiagomoreira.kar-1.0.0-SNAPSHOT.kar to >>>>>>>>>>>>> the deploy folder >>>>>>>>>>>>> 2. Or use the kar:install command >>>>>>>>>>>>> 5. Logs and console prints the exception: *Unable to >>>>>>>>>>>>> resolve >>>>>>>>>>>>> >>>>>>>>>>>>> br.com.thiagomoreira.application/1.0.0.201809021204: missing >>>>>>>>>>>>> requirement >>>>>>>>>>>>> >>>>>>>>>>>>> [br.com.thiagomoreira.application/1.0.0.201809021204] >>>>>>>>>>>>> osgi.service; >>>>>>>>>>>>> >>>>>>>>>>>>> filter:="(objectClass=org.osgi.service.component.ComponentFactory)"; >>>>>>>>>>>>> effective:=active* >>>>>>>>>>>>> >>>>>>>>>>>>> I have tried to install SCR feature before the kar >>>>>>>>>>>>> fail too, without lucky. What I'm missing? >>>>>>>>>>>>> >>>>>>>>>>>>> Yes, I was using ServiceMix 7.0.1 but now I switched >>>>>>>>>>>>> to Karaf 4.2.1 (after your reply in the ServiceMix >>>>>>>>>>>>> mailing list) >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks >>>>>>>>>>>>> >>>>>>>>>>>>> Thiago Moreira >>>>>>>>>>>>> +55 48 99911-6331 >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> On Sun, Sep 2, 2018 at 1:53 AM Jean-Baptiste Onofré >>>>>>>>>>>>> <j...@nanthrax.net <mailto:j...@nanthrax.net>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> Hi, >>>>>>>>>>>>> >>>>>>>>>>>>> I tried on both Karaf 4.1.6 and Karaf 4.2.1, and >>>>>>>>>>>>> it >>>>>>>>>>>>> works fine for me: >>>>>>>>>>>>> the SCR feature is installed and my SCR bundle >>>>>>>>>>>>> starts correctly when I >>>>>>>>>>>>> put the kar in the deploy folder or when I use >>>>>>>>>>>>> kar:install. >>>>>>>>>>>>> >>>>>>>>>>>>> So, you are using SMX 7.0.1 as Karaf version ? >>>>>>>>>>>>> >>>>>>>>>>>>> Regards >>>>>>>>>>>>> JB >>>>>>>>>>>>> >>>>>>>>>>>>> On 01/09/2018 19:10, Thiago Moreira (timba) wrote: >>>>>>>>>>>>> > >>>>>>>>>>>>> > I need scr as prerequisite to run my app. The >>>>>>>>>>>>> thing is I'm running a >>>>>>>>>>>>> > docker that has a vanilla ServiceMix (7.0.1) >>>>>>>>>>>>> installation and my goal is >>>>>>>>>>>>> > to be able to deploy a single file with >>>>>>>>>>>>> everything that I need. >>>>>>>>>>>>> > >>>>>>>>>>>>> > I tried to install scr and then deploy the kar >>>>>>>>>>>>> (via deploy folder) but >>>>>>>>>>>>> > not lucky >>>>>>>>>>>>> > >>>>>>>>>>>>> > Yes, the >>>>>>>>>>>>> service >>>>>>>>>>>>> org.osgi.service.component.ComponentFactory is >>>>>>>>>>>>> > installed and it is provided by my "Bot >>>>>>>>>>>>> Implementation" bundle. >>>>>>>>>>>>> > >>>>>>>>>>>>> > I didn't understand your last question. Is >>>>>>>>>>>>> there another way to >>>>>>>>>>>>> > achieve the installation of everything at once >>>>>>>>>>>>> (like EARs)? >>>>>>>>>>>>> > >>>>>>>>>>>>> > BTW, I'm an OSGi/Karaf/ServiceMix beginner. :D >>>>>>>>>>>>> > >>>>>>>>>>>>> > Thiago Moreira >>>>>>>>>>>>> > +55 48 99911-6331 >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> > On Sat, Sep 1, 2018 at 1:28 PM Jean-Baptiste >>>>>>>>>>>>> Onofré <j...@nanthrax.net >>>>>>>>>>>>> <mailto:j...@nanthrax.net> >>>>>>>>>>>>> > <mailto:j...@nanthrax.net >>>>>>>>>>>>> <mailto:j...@nanthrax.net>>> wrote: >>>>>>>>>>>>> > >>>>>>>>>>>>> > Oh sorry, I missed the cause: the service >>>>>>>>>>>>> > org.osgi.service.component.ComponentFactory >>>>>>>>>>>>> is not there ;) >>>>>>>>>>>>> > >>>>>>>>>>>>> > Why do you have as a prerequisite ? >>>>>>>>>>>>> > >>>>>>>>>>>>> > I guess that if you install the scr feature >>>>>>>>>>>>> before the kar it works fine >>>>>>>>>>>>> > right ? >>>>>>>>>>>>> > >>>>>>>>>>>>> > Can you check if you have the >>>>>>>>>>>>> ComponentFactory service ? >>>>>>>>>>>>> > >>>>>>>>>>>>> > By the way, why did you define the >>>>>>>>>>>>> requirement in your bundle ? >>>>>>>>>>>>> > >>>>>>>>>>>>> > Regards >>>>>>>>>>>>> > JB >>>>>>>>>>>>> > >>>>>>>>>>>>> > On 01/09/2018 18:19, Thiago Moreira (timba) >>>>>>>>>>>>> wrote: >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > Hey JB, yes it does. Check it here >>>>>>>>>>>>> feature.xml >>>>>>>>>>>>> > > >>>>>>>>>>>>> > >>>>>>>>>>>>> >>>>>>>>>>>>> <https://github.com/tmoreira2020/poc-osgi-whiteboard/blob/master/br.com.thiagomoreira.kar/src/main/feature/feature.xml> >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > Thiago Moreira >>>>>>>>>>>>> > > +55 48 99911-6331 >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > On Sat, Sep 1, 2018 at 1:05 PM >>>>>>>>>>>>> Jean-Baptiste Onofré >>>>>>>>>>>>> > <j...@nanthrax.net >>>>>>>>>>>>> <mailto:j...@nanthrax.net> >>>>>>>>>>>>> <mailto:j...@nanthrax.net >>>>>>>>>>>>> <mailto:j...@nanthrax.net>> >>>>>>>>>>>>> > > <mailto:j...@nanthrax.net >>>>>>>>>>>>> <mailto:j...@nanthrax.net> >>>>>>>>>>>>> <mailto:j...@nanthrax.net >>>>>>>>>>>>> <mailto:j...@nanthrax.net>>>> wrote: >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > Hi, >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > does the features XML used to create >>>>>>>>>>>>> the kar contain the scr >>>>>>>>>>>>> > feature ? >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > Basically, as you are using DS, you >>>>>>>>>>>>> have to install the scr >>>>>>>>>>>>> > feature. >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > Regards >>>>>>>>>>>>> > > JB >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > On 01/09/2018 17:52, Thiago Moreira >>>>>>>>>>>>> (timba) wrote: >>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > > Hey all! Does anyone can help me >>>>>>>>>>>>> with this question? >>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> > >>>>>>>>>>>>> >>>>>>>>>>>>> https://stackoverflow.com/questions/52118716/unable-to-deploy-a-karaf-kar-file-containing-a-componentfactory-osgi-declarative >>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > > Thanks >>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > > p.s. I have tried to send the >>>>>>>>>>>>> question directly to here >>>>>>>>>>>>> > before but >>>>>>>>>>>>> > > seems >>>>>>>>>>>>> > > > that I wasn't properly added to the >>>>>>>>>>>>> list. Given another try... >>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > > Thiago Moreira >>>>>>>>>>>>> > > > +55 48 99911-6331 >>>>>>>>>>>>> > > >>>>>>>>>>>>> > > -- >>>>>>>>>>>>> > > Jean-Baptiste Onofré >>>>>>>>>>>>> > > jbono...@apache.org >>>>>>>>>>>>> <mailto:jbono...@apache.org> >>>>>>>>>>>>> <mailto:jbono...@apache.org >>>>>>>>>>>>> <mailto:jbono...@apache.org>> >>>>>>>>>>>>> > <mailto:jbono...@apache.org >>>>>>>>>>>>> <mailto:jbono...@apache.org> >>>>>>>>>>>>> <mailto:jbono...@apache.org >>>>>>>>>>>>> <mailto:jbono...@apache.org>>> >>>>>>>>>>>>> > > http://blog.nanthrax.net >>>>>>>>>>>>> > > Talend - http://www.talend.com >>>>>>>>>>>>> > > >>>>>>>>>>>>> > >>>>>>>>>>>>> > -- >>>>>>>>>>>>> > Jean-Baptiste Onofré >>>>>>>>>>>>> > jbono...@apache.org >>>>>>>>>>>>> <mailto:jbono...@apache.org> >>>>>>>>>>>>> <mailto:jbono...@apache.org >>>>>>>>>>>>> <mailto:jbono...@apache.org>> >>>>>>>>>>>>> > http://blog.nanthrax.net >>>>>>>>>>>>> > Talend - http://www.talend.com >>>>>>>>>>>>> > >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> Jean-Baptiste Onofré >>>>>>>>>>>>> jbono...@apache.org <mailto:jbono...@apache.org> >>>>>>>>>>>>> http://blog.nanthrax.net >>>>>>>>>>>>> Talend - http://www.talend.com >>>>>>>>>>>>> >> > -- Jean-Baptiste Onofré jbono...@apache.org http://blog.nanthrax.net Talend - http://www.talend.com