buildobr Ant Task generates OBR XML that is not compatible with Felix 
bundlerepository
--------------------------------------------------------------------------------------

                 Key: IVY-1304
                 URL: https://issues.apache.org/jira/browse/IVY-1304
             Project: Ivy
          Issue Type: Bug
          Components: Ant
    Affects Versions: trunk
            Reporter: Stephen Evanchik


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)
 

I originally submitted a patch to Felix's LDAP Filter implementation to include 
support for < and >. According to the last comment in FELIX-3023 it appears 
that the OSGi Alliance is going to drop the < and > in favor of a composite 
operator of (a < b or a = b) (assuming I understand everything correctly).

I attempted to create a patch which is wrong but I think can be finished 
correctly.

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

        

Reply via email to