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 [email protected] 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) > <[email protected]> wrote: >> >> Exactly! >> >> Thiago Moreira >> +55 48 99911-6331 >> >> >> On Mon, Sep 3, 2018 at 12:07 PM Francois Papon >> <[email protected]> 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 >>> [email protected] >>> >>> 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 >>>>> <[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 >>>>>>>>>>>> >
