> Carsten, are you sure about null and not the literal string "?"

Hi,

both work - if you have a configuration admin supporting multi locations
(the "?"). But as that is in there for some time, you probably have it.
null works in any case and does not change the location at all - that's
why I prefer it.

>From the javadocs of getConfiguration:
         *If the
         * location parameter is {@code null}, it will be set when a Managed
Service
         * with the corresponding PID is registered for the first time.

Carsten

> 
> - Ray
> 
> On Wed, Aug 10, 2016 at 9:57 AM, Carsten Ziegeler <cziege...@apache.org>
> wrote:
> 
>>> Did not find any annotation in those components, they actually get
>> configured using the ConfigurationAdmin.
>>>
>>> Error:
>>> <org.apache.felix.scr:86:Cannot use configuration 
>>> pid=com.kuka.authorizationService.component
>> for bundle 7 because it belongs to bundle 77>
>>>
>>> OSGI-LIB\*.xml:
>>> <scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0";
>> activate="activate" configuration-policy="require" deactivate="deactivate"
>> immediate="true" name="com.kuka.authorizationService.component">
>>>    <implementation class="com.....AuthorizationServiceComponent"/>
>>>    <service>
>>>       <provide interface="com....IAuthorizationOsgiService"/>
>>>    </service>
>>>    <reference
>>>       bind="setServiceRegistry"
>>>       cardinality="1..1"
>>>       interface="com....IServiceRegistry"
>>>       name="IServiceRegistry"
>>>       configuration-policy="require"
>>>       policy="static"/>
>>> </scr:component>
>>>
>>> The component itself that has no annotations at all:
>>> [...]
>>> import com.....IServiceRegistry;
>>>
>>> /**
>>>  * The OSGI component for the {@link AuthorizationService}.
>>>  */
>>> public class AuthorizationServiceComponent implements
>> IAuthorizationOsgiService
>>> [...]
>>>
>>> The main bundle activator does the following regarding this component:
>>> Dictionary<String, Object> properties = new Hashtable<String, Object>();
>>> properties.put("userRolesFile", "someFileSystemPath");
>>> properties.put("userCredentialsFile", "someFileSystemPath");
>>> configAdmin.getConfiguration("com.kuka.authorizationService.
>> component").update(properties);
>>
>> This is exactly your problem :) With this you bind the configuration to
>> the bundle executing this code and then DS can't use it anymore. Change
>> it to use the two argument getConfiguration method and pass null as the
>> second argument (location).
>>
>> Regards
>> Carsten
>>>
>>> Interesting that all bundles that are configured like this end in such
>> an error.
>>> The application I try to wrap was built in equinox and starts there
>> without issues.
>>>
>>>
>>>
>>> -----Original Message-----
>>> From: Benson Margulies [mailto:ben...@basistech.com]
>>> Sent: Mittwoch, 10. August 2016 12:46
>>> To: users@felix.apache.org
>>> Subject: Re: Cannot use configuration pid ... for bundle XX because it
>> belongs to bundle YY
>>>
>>> In my experience, it means that you have annotated two different classes
>> with @Component and specified the same configurationPid. You can't do that;
>> if you need to share a configuration between DS components, you have to
>> inject the ConfigurationAdmin service instead of using the @Component
>> annotation.
>>>
>>> On Wed, Aug 10, 2016 at 3:32 AM, Remo Liechti <remo.liec...@swisslog.com
>>>
>>> wrote:
>>>
>>>> Hi guys
>>>>
>>>> During starting of bundles I get the following message:
>>>> <Aug 10, 2016 8:10:42 AM CEST> <Error> <OSGiForApps> <BEA-000000>
>>>> <org.apache.felix.scr:92:Cannot use configuration
>>>> pid=com.kuka.configuration.manager for bundle 17 because it belongs to
>>>> bundle 7>
>>>>
>>>> What does this actually mean? I have not found good information with
>>>> uncle sams google.
>>>> What I do, is the following:
>>>> - Wrap an osgi application into a j2ee web application (war file)
>>>> - Using Felix on Weblogic: https://docs.oracle.com/
>>>> middleware/1212/wls/WLPRG/osgi.htm
>>>> - My main bundle activator is called, using a servlet I start all
>>>> other bundles manually
>>>>
>>>>
>>>> @Resource(lookup = "java:app/osgi/Bundle") Bundle bundle;
>>>>
>>>> BundleContext bc = bundle.getBundleContext(); for (Bundle b :
>>>> bc.getBundles()) { [....] b.start(); [...] }
>>>>
>>>> Thanks,
>>>> Remo
>>>>
>>>>
>>>> This message may contain legally privileged or confidential
>>>> information and is therefore addressed to the named persons only. The
>>>> recipient should inform the sender and delete this message, if he/she
>>>> is not named as addressee. The sender disclaims any and all liability
>>>> for the integrity and punctuality of this message. The sender has
>>>> activated an automatic virus scanning, but does not guarantee the
>>>> virus free transmission of this message.
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
>>>> For additional commands, e-mail: users-h...@felix.apache.org
>>>>
>>>>
>>> This message may contain legally privileged or confidential information
>> and is therefore addressed to the named persons only. The recipient should
>> inform the sender and delete this message, if he/she is not named as
>> addressee. The sender disclaims any and all liability for the integrity and
>> punctuality of this message. The sender has activated an automatic virus
>> scanning, but does not guarantee the virus free transmission of this
>> message.
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
>>> For additional commands, e-mail: users-h...@felix.apache.org
>>>
>>
>>
>>
>>
>> --
>> Carsten Ziegeler
>> Adobe Research Switzerland
>> cziege...@apache.org
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
>> For additional commands, e-mail: users-h...@felix.apache.org
>>
>>
> 
> 


 

-- 
Carsten Ziegeler
Adobe Research Switzerland
cziege...@apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org

Reply via email to