FilterImpl from Felix Framework does not support none LDAP operators
--------------------------------------------------------------------

                 Key: FELIX-973
                 URL: https://issues.apache.org/jira/browse/FELIX-973
             Project: Felix
          Issue Type: Bug
          Components: Framework
    Affects Versions: felix-1.4.1
            Reporter: Kristian Koehler
         Attachments: patch.txt

Hi

as discussed on the user mailing list 
(http://www.mail-archive.com/us...@felix.apache.org/msg03402.html) the 
framework doesn't support none standard LDAP operators (see also the RFC-0112 
Bundle Repository). 

The filter impl throws an exception while parsing a repository file containing 
filters with this syntax.

Kristian

sample stack trace
--- 8< ---
ERROR: Error parsing repository metadata
org.osgi.framework.InvalidSyntaxException: expected ~=|>=|<=
    at org.apache.felix.framework.FilterImpl.<init>(FilterImpl.java:81)
    at 
org.apache.felix.framework.BundleContextImpl.createFilter(BundleContextImpl.java:102)
    at 
org.apache.felix.bundlerepository.RequirementImpl.setFilter(RequirementImpl.java:57)
    at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at 
org.apache.felix.bundlerepository.metadataparser.XmlCommonHandler.startElement(XmlCommonHandler.java:490)
    at 
org.apache.felix.bundlerepository.metadataparser.kxmlsax.KXml2SAXParser.parseXML(KXml2SAXParser.java:67)
    at 
org.apache.felix.bundlerepository.RepositoryImpl.parseRepositoryFile(RepositoryImpl.java:256)
    at 
org.apache.felix.bundlerepository.RepositoryImpl.access$000(RepositoryImpl.java:44)
    at 
org.apache.felix.bundlerepository.RepositoryImpl$1.run(RepositoryImpl.java:75)
    at java.security.AccessController.doPrivileged(Native Method)
    at 
org.apache.felix.bundlerepository.RepositoryImpl.<init>(RepositoryImpl.java:71)
    at 
org.apache.felix.bundlerepository.RepositoryImpl.<init>(RepositoryImpl.java:60)
    at 
org.apache.felix.bundlerepository.RepositoryAdminImpl.initialize(RepositoryAdminImpl.java:206)
    at 
org.apache.felix.bundlerepository.RepositoryAdminImpl.discoverResources(RepositoryAdminImpl.java:126)
    at 
org.apache.felix.bundlerepository.ObrCommandImpl.list(ObrCommandImpl.java:210)
    at 
org.apache.felix.bundlerepository.ObrCommandImpl.execute(ObrCommandImpl.java:104)
    at 
org.apache.felix.shell.impl.Activator$ShellServiceImpl.executeCommand(Activator.java:276)
    at 
org.apache.felix.shell.tui.Activator$ShellTuiRunnable.run(Activator.java:167)
    at java.lang.Thread.run(Thread.java:619)
WARNING: RepositoryAdminImpl: Exception creating repository 
file:/home/kkoehler/repository.xml. Repository is skipped.
java.lang.reflect.InvocationTargetException
    at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at 
org.apache.felix.bundlerepository.metadataparser.XmlCommonHandler.startElement(XmlCommonHandler.java:490)
    at 
org.apache.felix.bundlerepository.metadataparser.kxmlsax.KXml2SAXParser.parseXML(KXml2SAXParser.java:67)
    at 
org.apache.felix.bundlerepository.RepositoryImpl.parseRepositoryFile(RepositoryImpl.java:256)
    at 
org.apache.felix.bundlerepository.RepositoryImpl.access$000(RepositoryImpl.java:44)
    at 
org.apache.felix.bundlerepository.RepositoryImpl$1.run(RepositoryImpl.java:75)
    at java.security.AccessController.doPrivileged(Native Method)
    at 
org.apache.felix.bundlerepository.RepositoryImpl.<init>(RepositoryImpl.java:71)
    at 
org.apache.felix.bundlerepository.RepositoryImpl.<init>(RepositoryImpl.java:60)
    at 
org.apache.felix.bundlerepository.RepositoryAdminImpl.initialize(RepositoryAdminImpl.java:206)
    at 
org.apache.felix.bundlerepository.RepositoryAdminImpl.discoverResources(RepositoryAdminImpl.java:126)
    at 
org.apache.felix.bundlerepository.ObrCommandImpl.list(ObrCommandImpl.java:210)
    at 
org.apache.felix.bundlerepository.ObrCommandImpl.execute(ObrCommandImpl.java:104)
    at 
org.apache.felix.shell.impl.Activator$ShellServiceImpl.executeCommand(Activator.java:276)
    at 
org.apache.felix.shell.tui.Activator$ShellTuiRunnable.run(Activator.java:167)
    at java.lang.Thread.run(Thread.java:619)
Caused by: org.osgi.framework.InvalidSyntaxException: expected ~=|>=|<=
    at org.apache.felix.framework.FilterImpl.<init>(FilterImpl.java:81)
    at 
org.apache.felix.framework.BundleContextImpl.createFilter(BundleContextImpl.java:102)
    at 
org.apache.felix.bundlerepository.RequirementImpl.setFilter(RequirementImpl.java:57)
    ... 18 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to