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.