You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@felix.apache.org by Allen Lau <al...@gmail.com> on 2009/05/28 22:30:54 UTC

Issue with OBR filters?

Hi,

Trying out the latest BundleRepository 1.4.0 release.

It seems that certain filters are still failing on deploy.

For instance, I have an import-package header that looks like this:

org.slf4j;version="[1.5.6,1.5.6]";provider=paxlogging

which bindex translates to

<require extend="false"
filter="(&amp;(package=org.slf4j)(version&gt;=1.5.6)(version&lt;=1.5.6)(provider=paxlogging)(mandatory:&lt;*provider))"
multiple="false" name="package" optional="false">Import package org.slf4j
;version=[1.5.6,1.5.6]</require>

During runtime of obr deploy "package", the deploy fails:

Unsatisfied requirement(s):
---------------------------

(&(package=org.slf4j)(version>=1.5.6)(version<=1.5.6)(provider=paxlogging)(mandatory:<*provider))


I already have the pax-logging api and service installed in the container.
> ps
START LEVEL 1
   ID   State         Level  Name
[   0] [Active     ] [    0] System Bundle (1.8.0)
[   1] [Active     ] [    1] Apache Felix Shell Service (1.2.0)
[   2] [Active     ] [    1] Apache Felix Remote Shell (1.0.4)
[   3] [Active     ] [    1] Apache Felix Bundle Repository (1.4.0)
[   4] [Active     ] [    1] Apache Felix Configuration Admin Service
(1.0.10)
[   5] [Active     ] [    1] Apache Felix EventAdmin (1.0.0)
[   6] [Active     ] [    1] OPS4J Pax Logging - API (1.3.0)
[   7] [Active     ] [    1] OPS4J Pax Logging - Service (1.3.0)
[   8] [Active     ] [    1] OPS4J Pax Url - mvn: (0.5.1)

Am I doing something wrong with the import statement or is this an issue
with OBR?

Thanks,
Allen

Re: Issue with OBR filters?

Posted by Allen Lau <al...@gmail.com>.
I'm not sure either, although section 5.9.2 of RFC-0112 specifies that the
mandatory attribute should be added when there are custom attributes in the
Import-Package header.

I guess this "mandatory" attribute for OBR is specifying that all of the
import attributes must be present but the current Felix OBR client does not
understand it
or is interpreting it incorrectly.

Allen

On Thu, May 28, 2009 at 5:00 PM, Richard S. Hall <he...@ungoverned.org>wrote:

> On 05/28/2009 07:35 PM, Allen Lau wrote:
>
>> Hi Richard,
>>
>> If that is the case, should the bindex code in the maven-bundle-plugin be
>> updated so that it does not generate the mandatory directive?
>>
>>
>
> Possibly, although I am more interested in why there is a mandatory
> directive on an import...seems really strange, unless I am missing
> something.
>
> -> richard
>
>
>  Thanks,
>> Allen
>>
>> On Thu, May 28, 2009 at 1:59 PM, Richard S. Hall<heavy@ungoverned.org
>> >wrote:
>>
>>
>>
>>> The mandatory directive seems odd here, it should be on the export, not
>>> the
>>> import.
>>>
>>> Further, I am not sure if support for mandatory attributes is implemented
>>> in OBR.
>>>
>>> ->  richard
>>>
>>>
>>> On 5/28/09 4:30 PM, Allen Lau wrote:
>>>
>>>
>>>
>>>> Hi,
>>>>
>>>> Trying out the latest BundleRepository 1.4.0 release.
>>>>
>>>> It seems that certain filters are still failing on deploy.
>>>>
>>>> For instance, I have an import-package header that looks like this:
>>>>
>>>> org.slf4j;version="[1.5.6,1.5.6]";provider=paxlogging
>>>>
>>>> which bindex translates to
>>>>
>>>> <require extend="false"
>>>>
>>>>
>>>> filter="(&amp;(package=org.slf4j)(version&gt;=1.5.6)(version&lt;=1.5.6)(provider=paxlogging)(mandatory:&lt;*provider))"
>>>> multiple="false" name="package" optional="false">Import package
>>>> org.slf4j
>>>> ;version=[1.5.6,1.5.6]</require>
>>>>
>>>> During runtime of obr deploy "package", the deploy fails:
>>>>
>>>> Unsatisfied requirement(s):
>>>> ---------------------------
>>>>
>>>>
>>>>
>>>> (&(package=org.slf4j)(version>=1.5.6)(version<=1.5.6)(provider=paxlogging)(mandatory:<*provider))
>>>>
>>>>
>>>> I already have the pax-logging api and service installed in the
>>>> container.
>>>>
>>>>
>>>>
>>>>
>>>>> ps
>>>>>
>>>>>
>>>>>
>>>>>
>>>> START LEVEL 1
>>>>    ID   State         Level  Name
>>>> [   0] [Active     ] [    0] System Bundle (1.8.0)
>>>> [   1] [Active     ] [    1] Apache Felix Shell Service (1.2.0)
>>>> [   2] [Active     ] [    1] Apache Felix Remote Shell (1.0.4)
>>>> [   3] [Active     ] [    1] Apache Felix Bundle Repository (1.4.0)
>>>> [   4] [Active     ] [    1] Apache Felix Configuration Admin Service
>>>> (1.0.10)
>>>> [   5] [Active     ] [    1] Apache Felix EventAdmin (1.0.0)
>>>> [   6] [Active     ] [    1] OPS4J Pax Logging - API (1.3.0)
>>>> [   7] [Active     ] [    1] OPS4J Pax Logging - Service (1.3.0)
>>>> [   8] [Active     ] [    1] OPS4J Pax Url - mvn: (0.5.1)
>>>>
>>>> Am I doing something wrong with the import statement or is this an issue
>>>> with OBR?
>>>>
>>>> Thanks,
>>>> Allen
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>
>>
>

Re: Issue with OBR filters?

Posted by "Richard S. Hall" <he...@ungoverned.org>.
On 05/28/2009 07:35 PM, Allen Lau wrote:
> Hi Richard,
>
> If that is the case, should the bindex code in the maven-bundle-plugin be
> updated so that it does not generate the mandatory directive?
>    

Possibly, although I am more interested in why there is a mandatory 
directive on an import...seems really strange, unless I am missing 
something.

-> richard

> Thanks,
> Allen
>
> On Thu, May 28, 2009 at 1:59 PM, Richard S. Hall<he...@ungoverned.org>wrote:
>
>    
>> The mandatory directive seems odd here, it should be on the export, not the
>> import.
>>
>> Further, I am not sure if support for mandatory attributes is implemented
>> in OBR.
>>
>> ->  richard
>>
>>
>> On 5/28/09 4:30 PM, Allen Lau wrote:
>>
>>      
>>> Hi,
>>>
>>> Trying out the latest BundleRepository 1.4.0 release.
>>>
>>> It seems that certain filters are still failing on deploy.
>>>
>>> For instance, I have an import-package header that looks like this:
>>>
>>> org.slf4j;version="[1.5.6,1.5.6]";provider=paxlogging
>>>
>>> which bindex translates to
>>>
>>> <require extend="false"
>>>
>>> filter="(&amp;(package=org.slf4j)(version&gt;=1.5.6)(version&lt;=1.5.6)(provider=paxlogging)(mandatory:&lt;*provider))"
>>> multiple="false" name="package" optional="false">Import package org.slf4j
>>> ;version=[1.5.6,1.5.6]</require>
>>>
>>> During runtime of obr deploy "package", the deploy fails:
>>>
>>> Unsatisfied requirement(s):
>>> ---------------------------
>>>
>>>
>>> (&(package=org.slf4j)(version>=1.5.6)(version<=1.5.6)(provider=paxlogging)(mandatory:<*provider))
>>>
>>>
>>> I already have the pax-logging api and service installed in the container.
>>>
>>>
>>>        
>>>> ps
>>>>
>>>>
>>>>          
>>> START LEVEL 1
>>>     ID   State         Level  Name
>>> [   0] [Active     ] [    0] System Bundle (1.8.0)
>>> [   1] [Active     ] [    1] Apache Felix Shell Service (1.2.0)
>>> [   2] [Active     ] [    1] Apache Felix Remote Shell (1.0.4)
>>> [   3] [Active     ] [    1] Apache Felix Bundle Repository (1.4.0)
>>> [   4] [Active     ] [    1] Apache Felix Configuration Admin Service
>>> (1.0.10)
>>> [   5] [Active     ] [    1] Apache Felix EventAdmin (1.0.0)
>>> [   6] [Active     ] [    1] OPS4J Pax Logging - API (1.3.0)
>>> [   7] [Active     ] [    1] OPS4J Pax Logging - Service (1.3.0)
>>> [   8] [Active     ] [    1] OPS4J Pax Url - mvn: (0.5.1)
>>>
>>> Am I doing something wrong with the import statement or is this an issue
>>> with OBR?
>>>
>>> Thanks,
>>> Allen
>>>
>>>
>>>
>>>        
>
>    

Re: Issue with OBR filters?

Posted by Allen Lau <al...@gmail.com>.
Hi Richard,

If that is the case, should the bindex code in the maven-bundle-plugin be
updated so that it does not generate the mandatory directive?

Thanks,
Allen

On Thu, May 28, 2009 at 1:59 PM, Richard S. Hall <he...@ungoverned.org>wrote:

> The mandatory directive seems odd here, it should be on the export, not the
> import.
>
> Further, I am not sure if support for mandatory attributes is implemented
> in OBR.
>
> -> richard
>
>
> On 5/28/09 4:30 PM, Allen Lau wrote:
>
>> Hi,
>>
>> Trying out the latest BundleRepository 1.4.0 release.
>>
>> It seems that certain filters are still failing on deploy.
>>
>> For instance, I have an import-package header that looks like this:
>>
>> org.slf4j;version="[1.5.6,1.5.6]";provider=paxlogging
>>
>> which bindex translates to
>>
>> <require extend="false"
>>
>> filter="(&amp;(package=org.slf4j)(version&gt;=1.5.6)(version&lt;=1.5.6)(provider=paxlogging)(mandatory:&lt;*provider))"
>> multiple="false" name="package" optional="false">Import package org.slf4j
>> ;version=[1.5.6,1.5.6]</require>
>>
>> During runtime of obr deploy "package", the deploy fails:
>>
>> Unsatisfied requirement(s):
>> ---------------------------
>>
>>
>> (&(package=org.slf4j)(version>=1.5.6)(version<=1.5.6)(provider=paxlogging)(mandatory:<*provider))
>>
>>
>> I already have the pax-logging api and service installed in the container.
>>
>>
>>> ps
>>>
>>>
>> START LEVEL 1
>>    ID   State         Level  Name
>> [   0] [Active     ] [    0] System Bundle (1.8.0)
>> [   1] [Active     ] [    1] Apache Felix Shell Service (1.2.0)
>> [   2] [Active     ] [    1] Apache Felix Remote Shell (1.0.4)
>> [   3] [Active     ] [    1] Apache Felix Bundle Repository (1.4.0)
>> [   4] [Active     ] [    1] Apache Felix Configuration Admin Service
>> (1.0.10)
>> [   5] [Active     ] [    1] Apache Felix EventAdmin (1.0.0)
>> [   6] [Active     ] [    1] OPS4J Pax Logging - API (1.3.0)
>> [   7] [Active     ] [    1] OPS4J Pax Logging - Service (1.3.0)
>> [   8] [Active     ] [    1] OPS4J Pax Url - mvn: (0.5.1)
>>
>> Am I doing something wrong with the import statement or is this an issue
>> with OBR?
>>
>> Thanks,
>> Allen
>>
>>
>>
>

Re: Issue with OBR filters?

Posted by "Richard S. Hall" <he...@ungoverned.org>.
The mandatory directive seems odd here, it should be on the export, not 
the import.

Further, I am not sure if support for mandatory attributes is 
implemented in OBR.

-> richard

On 5/28/09 4:30 PM, Allen Lau wrote:
> Hi,
>
> Trying out the latest BundleRepository 1.4.0 release.
>
> It seems that certain filters are still failing on deploy.
>
> For instance, I have an import-package header that looks like this:
>
> org.slf4j;version="[1.5.6,1.5.6]";provider=paxlogging
>
> which bindex translates to
>
> <require extend="false"
> filter="(&amp;(package=org.slf4j)(version&gt;=1.5.6)(version&lt;=1.5.6)(provider=paxlogging)(mandatory:&lt;*provider))"
> multiple="false" name="package" optional="false">Import package org.slf4j
> ;version=[1.5.6,1.5.6]</require>
>
> During runtime of obr deploy "package", the deploy fails:
>
> Unsatisfied requirement(s):
> ---------------------------
>
> (&(package=org.slf4j)(version>=1.5.6)(version<=1.5.6)(provider=paxlogging)(mandatory:<*provider))
>
>
> I already have the pax-logging api and service installed in the container.
>    
>> ps
>>      
> START LEVEL 1
>     ID   State         Level  Name
> [   0] [Active     ] [    0] System Bundle (1.8.0)
> [   1] [Active     ] [    1] Apache Felix Shell Service (1.2.0)
> [   2] [Active     ] [    1] Apache Felix Remote Shell (1.0.4)
> [   3] [Active     ] [    1] Apache Felix Bundle Repository (1.4.0)
> [   4] [Active     ] [    1] Apache Felix Configuration Admin Service
> (1.0.10)
> [   5] [Active     ] [    1] Apache Felix EventAdmin (1.0.0)
> [   6] [Active     ] [    1] OPS4J Pax Logging - API (1.3.0)
> [   7] [Active     ] [    1] OPS4J Pax Logging - Service (1.3.0)
> [   8] [Active     ] [    1] OPS4J Pax Url - mvn: (0.5.1)
>
> Am I doing something wrong with the import statement or is this an issue
> with OBR?
>
> Thanks,
> Allen
>
>