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 <[email protected]> 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 > [email protected] > > 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é <[email protected]> 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 >> > [email protected] >> > >> > 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 >> >> <[email protected] <mailto:[email protected]>> >> >> 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 >> >> [email protected] <mailto:[email protected]> >> >> >> >> 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 >> >>> [email protected] <mailto:[email protected]> >> >>> 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 >> >>>> <[email protected] >> >>>> <mailto:[email protected]>> 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 >> >>>> [email protected] <mailto:[email protected]> >> >>>> >> >>>> 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 >> >>>>> <[email protected] >> >>>>> <mailto:[email protected]>> 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)" <[email protected] >> >>>>> <mailto:[email protected]>> >> >>>>> Date : 02/09/2018 16:14 (GMT+04:00) >> >>>>> À : [email protected] <mailto:[email protected]> >> >>>>> 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é >> >>>>> <[email protected] <mailto:[email protected]>> 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é <[email protected] <mailto:[email protected]> >> >>>>> > <mailto:[email protected] >> >>>>> <mailto:[email protected]>>> 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é >> >>>>> > <[email protected] <mailto:[email protected]> >> >>>>> <mailto:[email protected] <mailto:[email protected]>> >> >>>>> > > <mailto:[email protected] >> >>>>> <mailto:[email protected]> <mailto:[email protected] >> >>>>> <mailto:[email protected]>>>> 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é >> >>>>> > > [email protected] >> >>>>> <mailto:[email protected]> >> >>>>> <mailto:[email protected] >> >>>>> <mailto:[email protected]>> >> >>>>> > <mailto:[email protected] >> >>>>> <mailto:[email protected]> >> >>>>> <mailto:[email protected] >> >>>>> <mailto:[email protected]>>> >> >>>>> > > http://blog.nanthrax.net >> >>>>> > > Talend - http://www.talend.com >> >>>>> > > >> >>>>> > >> >>>>> > -- >> >>>>> > Jean-Baptiste Onofré >> >>>>> > [email protected] >> >>>>> <mailto:[email protected]> >> >>>>> <mailto:[email protected] >> >>>>> <mailto:[email protected]>> >> >>>>> > http://blog.nanthrax.net >> >>>>> > Talend - http://www.talend.com >> >>>>> > >> >>>>> >> >>>>> -- >> >>>>> Jean-Baptiste Onofré >> >>>>> [email protected] <mailto:[email protected]> >> >>>>> http://blog.nanthrax.net >> >>>>> Talend - http://www.talend.com >> >>>>> >> >>>> >> >>> >> >> >> > > > -- http://about.me/milen
