felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard S. Hall (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FELIX-3023) bundlerepository does not support RFC 112 Greater and Less operators
Date Thu, 07 Jul 2011 17:27:16 GMT

    [ https://issues.apache.org/jira/browse/FELIX-3023?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13061450#comment-13061450

Richard S. Hall commented on FELIX-3023:

I won't say I remember for certain, because I don't. But I can say that somewhere in there
the Felix framework switched to using the same generic capabilities/requirements model internally
as the one use by OBR. The ultimate goal being to use the same resolver in both the framework
and OBR. As such, extending the filter syntax isn't something that would be too good, since
it would create a containerism. Further, the OBR spec inside the OSGi Alliance is slowly reaching
a close and it doesn't extend the filter syntax either. Extending the filter syntax was specifically
discussed and rejected for various reasons.

Since it is possible to express the condition using the original filter syntax, it seems better
to open a bug against buildobr to convince them to use the standard syntax. Just my $0.02.

> bundlerepository does not support RFC 112 Greater and Less operators
> --------------------------------------------------------------------
>                 Key: FELIX-3023
>                 URL: https://issues.apache.org/jira/browse/FELIX-3023
>             Project: Felix
>          Issue Type: Bug
>          Components: Bundle Repository (OBR)
>    Affects Versions: bundlerepository-1.6.4
>         Environment: Apache Karaf 2.2.1 / bundlerepository 1.6.4
>            Reporter: Stephen Evanchik
>         Attachments: rfc112_5.6.1_exclusive_inequality_operators.patch
> I am using Ivy's "buildobr" Ant task to construct an OBR from my Eclipse installation.
It is generating filters in the following format:
>   (&(package=org.eclipse.core.runtime)(version<1.5.0))
> which cannot be parsed by the org.apache.felix.bundlerepository in Karaf 2.2.1
> I see the following exceptions in the Karaf logs:
> java.lang.Exception: Error while parsing resource null at line 10 and column 129
>      at org.apache.felix.bundlerepository.impl.PullParser.parseResource(PullParser.java:241)
>      at org.apache.felix.bundlerepository.impl.PullParser.parse(PullParser.java:138)
> .... skipping moderately relevant information ...
>  Caused by: org.osgi.framework.InvalidSyntaxException: Missing ')': (bundle=org.eclipse.wst.common.project.facet.core)))
>      at org.apache.felix.utils.filter.FilterImpl$Parser.parse_filter(FilterImpl.java:1203)
>      at org.apache.felix.utils.filter.FilterImpl$Parser.parse_and(FilterImpl.java:1248)
>      at org.apache.felix.utils.filter.FilterImpl$Parser.parse_filtercomp(FilterImpl.java:1222)
>      at org.apache.felix.utils.filter.FilterImpl$Parser.parse_filter(FilterImpl.java:1198)
>      at org.apache.felix.utils.filter.FilterImpl$Parser.parse(FilterImpl.java:1172)
>      at org.apache.felix.utils.filter.FilterImpl.newInstance(FilterImpl.java:87)
>      at org.apache.felix.bundlerepository.impl.RequirementImpl.setFilter(RequirementImpl.java:74)
> After looking through several examples of OBR XML files and reading the spec I understand
that the original OBR spec/implementation simply inherited the LDAP Filter constraints from
the core OSGi specification.
> This was fixed by FELIX-973 for bundlerepository-1.4.0 in 2009 but after FELIX-2134 was
committed it appears to have reverted to the standard OSGi LDAP Filter constraints.
> Making matters worse (for my at least) is HEAD has changed substantially from FELIX-2134
and I'm not sure where to put the OBR specific FilterImpl.

This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message