Did you install the Felix Webconsole? It provides a wonderful amount of info 
why DS sometimes does not work.

Kind regards,

        Peter Kriens

On 19 jan 2011, at 17:42, David Conde wrote:

> No, if I remove the target="(TECHNOLOGY_HA=ZIGBEE)" from the first one, it is 
> the only way that it is take the proper ManagerService if the proper 
> ManagerService (the one with TECHNOLOGY_HA=ZIGBEE in its properties) is 
> activated first. If I leave the target field with some value always I get 
> that my bundle is not satisfied since it does not find any bundle with this 
> property between the ManagerServices.
> 
> 
> 
> Thank you again
> 
> 
> 
> De: osgi-dev-boun...@mail.osgi.org [mailto:osgi-dev-boun...@mail.osgi.org] En 
> nombre de BJ Hargrave
> Enviado el: miércoles, 19 de enero de 2011 17:05
> Para: OSGi Developer Mail List
> Asunto: RE: [osgi-dev] Problem with Declarative Services and Filtering
> 
> 
> 
> So if you remove target="(TECHNOLOGY_HA=ZIGBEE)" from the first XML file, 
> that component gets the proper ManagerService? 
> -- 
> 
> 
> BJ Hargrave
> Senior Technical Staff Member, IBM
> OSGi Fellow and CTO of the  <http://www.osgi.org/> OSGi Alliance
> <mailto:hargr...@us.ibm.com> hargr...@us.ibm.com 
> 
> 
> office: +1 386 848 1781
> mobile: +1 386 848 3788
> 
> 
> 
> 
> 
> 
> 
> From:        "David Conde" <dco...@citic.es> 
> To:        "'OSGi Developer Mail List'" <osgi-dev@mail.osgi.org> 
> Date:        2011/01/19 10:53 
> Subject:        RE: [osgi-dev] Problem with Declarative Services and 
> Filtering 
> Sent by:        osgi-dev-boun...@mail.osgi.org 
> 
>  _____  
> 
> 
> 
> 
> Hi again,
> 
> Here I write the component.xml of MyService (the one which I want to activate 
> when the Service with TECHNOLOGY_HA=ZIGBEE is ACTIVE):
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <scr:component xmlns:scr=" <http://www.osgi.org/xmlns/scr/v1.1.0> 
> http://www.osgi.org/xmlns/scr/v1.1.0"; activate="activate" 
> configuration-policy="optional" deactivate="deactivate" 
> factory="es.citic.puedes.homeautomation.zigbee.tech.factory" 
> modified="modified" name="es.citic.puedes.homeautomation.zigbee.tech">
>  <implementation 
> class="es.citic.puedes.homeautomation.zigbee.tech.impl.ZBTechManager"/>
>  <property name="TECHNOLOGY_HA" type="String" value="ZIGBEE"/>
>  <service>
>     <provide 
> interface="es.citic.puedes.homeautomation.devicemanager.ITechnologymanager"/>
>  </service>
>  <reference bind="bindPreferencesService" cardinality="1..1" 
> interface="org.osgi.service.prefs.PreferencesService" 
> name="PreferencesService" policy="dynamic" unbind="unbindPreferencesService"/>
>  <reference bind="bindConfigurationAdmin" cardinality="1..1" 
> interface="org.osgi.service.cm.ConfigurationAdmin" name="ConfigurationAdmin" 
> policy="dynamic" unbind="unbindConfigurationAdmin"/>
>  <reference bind="bindZBCommunicationManager" cardinality="1..1" 
> interface="es.citic.puedes.homeautomation.communicationdevicemanager.ICommunicationDeviceManager"
>  name="ICommunicationDeviceManager" policy="dynamic" 
> target="(TECHNOLOGY_HA=ZIGBEE)" unbind="unbindZBCommunicationManager"/>
> </scr:component>
> 
> 
> And next you can see the component.xml of the ManagerService which should 
> activate the first one.
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <scr:component xmlns:scr=" <http://www.osgi.org/xmlns/scr/v1.1.0> 
> http://www.osgi.org/xmlns/scr/v1.1.0"; activate="activate" 
> configuration-policy="optional" deactivate="deactivate" 
> factory="es.citic.puedes.homeautomation.zigbee.comm.factory" 
> immediate="false" modified="modified" 
> name="es.citic.puedes.homeautomation.zigbee.comm.impl.ZBCommManager">
>  <implementation 
> class="es.citic.puedes.homeautomation.zigbee.comm.impl.ZBCommManager"/>
>  <service>
>     <provide 
> interface="es.citic.puedes.homeautomation.communicationdevicemanager.ICommunicationDeviceManager"/>
>  </service>
>  <property name="TECHNOLOGY_HA" type="String" value="ZIGBEE"/>
>  <reference bind="bindPreferenceService" cardinality="1..1" 
> interface="org.osgi.service.prefs.PreferencesService" 
> name="PreferencesService" policy="dynamic" unbind="unbindPreferenceService"/>
> </scr:component>
> 
> 
> I have either tried by writing (& 
> (name="TECHNOLOGY_HA)(type="String")(value="ZIGBEE")) and I get the same 
> result.
> 
> Thank you for your time and help!
> 
> Regards
> 
> David
> 
> -----Mensaje original-----
> De: osgi-dev-boun...@mail.osgi.org [ <mailto:osgi-dev-boun...@mail.osgi.org> 
> mailto:osgi-dev-boun...@mail.osgi.org] En nombre de Felix Meschberger
> Enviado el: miércoles, 19 de enero de 2011 15:40
> Para: OSGi Developer Mail List
> Asunto: RE: [osgi-dev] Problem with Declarative Services and Filtering
> 
> Hi,
> 
> Am Mittwoch, den 19.01.2011, 14:49 +0100 schrieb David Conde: 
>> Hi, I have just tried (TECH=AAA) and I get the same result as
>> (TECH=”AAA”), I got that the component is not satisfied like If the
>> ManagerService with TECH=AAA does not exist, could this be because of
>> I am using TECHNOLOGY_HA instead of TECH as key property?I mean
>> because of the “_” char.
> 
> Consider this:
> 
>  Hashtable props = new Hashtable();
>  props.put("TECHNOLOGY_HA", "AAA");
>  bundleContext.registerService(ManagerService.class,
>       managerService, props);
> 
> In this case the reference must be:
> 
>  <Reference ... target="(TECHNOLOGY_HA=AAA)" ... />
> 
> Of course the names of the properties must exactly match otherwise,
> there will never be a service provided....
> 
> Otherwise, please provide samples. Thanks.
> 
> Regards
> Felix
> 
>> 
>> 
>> 
>> Thanks in advance
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> De: osgi-dev-boun...@mail.osgi.org
>> [ <mailto:osgi-dev-boun...@mail.osgi.org> 
>> mailto:osgi-dev-boun...@mail.osgi.org] En nombre de BJ Hargrave
>> Enviado el: miércoles, 19 de enero de 2011 14:38
>> Para: OSGi Developer Mail List
>> Asunto: Re: [osgi-dev] Problem with Declarative Services and Filtering
>> 
>> 
>> 
>> 
>> Don't put the quote *in* the attribute value of the filter
>> expression. 
>> 
>> (TECH=AAA) not (TECH="AAA") 
>> 
>> The latter is looking for a 5 character string that starts and ends
>> with double quote. 
>> -- 
>> 
>> BJ Hargrave
>> Senior Technical Staff Member, IBM
>> OSGi Fellow and CTO of the OSGi
>> Alliance
>> hargr...@us.ibm.com 
>> 
>> 
>> 
>> 
>> 
>>            office: +1 386 848 1781
>> 
>>            mobile: +1 386 848 3788
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> From:        "David Conde" <dco...@citic.es> 
>> To:        "'OSGi Developer Mail List'" <osgi-dev@mail.osgi.org> 
>> Date:        2011/01/19 07:54 
>> Subject:        [osgi-dev] Problem with Declarative Services and
>> Filtering 
>> Sent by:        osgi-dev-boun...@mail.osgi.org 
>> 
>> 
>> ______________________________________________________________________
>> 
>> 
>> 
>> Hi, 
>> 
>> I have a service MyService which is waiting for another service
>> ManagerService to be activated. The problem is that there are more
>> than one ManagerService in the platform so the first ManagerService
>> ACTIVE will call the method bindManagerService(ManagerService ms) from
>> MyService and this will activate MyService. The problem is that I do
>> not want any of them but I need the ManagerService whose property is
>> TECH=AAA (which is specified in the component.xml of the
>> ManagerService right). 
>> 
>> In this way, in order to get the ManagerService whose property is
>> TECH=AAA and not other one, I specified in the component.xml of my
>> service in the “target” field the next LDAP filter:    (TECH=”AAA”) ,
>> the problem is that MyService is never satisfied since it does not
>> find a ManagerService with this property. 
>> 
>> How could I specified the one that I need in the component.xml in
>> order to active MyService just when the ManagerService that I am
>> waiting for is ACTIVE? 
>> 
>> Thank you in advance 
>> 
>> Best Regards_______________________________________________
>> OSGi Developer Mail List
>> osgi-dev@mail.osgi.org
>> <https://mail.osgi.org/mailman/listinfo/osgi-dev> 
>> https://mail.osgi.org/mailman/listinfo/osgi-dev 
>> 
>> 
>> _______________________________________________
>> OSGi Developer Mail List
>> osgi-dev@mail.osgi.org
>> <https://mail.osgi.org/mailman/listinfo/osgi-dev> 
>> https://mail.osgi.org/mailman/listinfo/osgi-dev
> 
> 
> _______________________________________________
> OSGi Developer Mail List
> osgi-dev@mail.osgi.org
> <https://mail.osgi.org/mailman/listinfo/osgi-dev> 
> https://mail.osgi.org/mailman/listinfo/osgi-dev
> 
> 
> _______________________________________________
> OSGi Developer Mail List
> osgi-dev@mail.osgi.org
> <https://mail.osgi.org/mailman/listinfo/osgi-dev> 
> https://mail.osgi.org/mailman/listinfo/osgi-dev
> 
> _______________________________________________
> OSGi Developer Mail List
> osgi-dev@mail.osgi.org
> https://mail.osgi.org/mailman/listinfo/osgi-dev


_______________________________________________
OSGi Developer Mail List
osgi-dev@mail.osgi.org
https://mail.osgi.org/mailman/listinfo/osgi-dev

Reply via email to