How can I list the system capabilities in karaf. I am wondering if I am
running into the issue mentioned here
https://groups.google.com/forum/#!topic/bndtools-users/gOnbEAye708 by peter
--------------------
In the example code we have the following requirement (from the annotation):
Require-Capability
osgi.enroute.webresource;
resource:List<String>=“angular.js,angular-resource.js,angular-route.js";
priority:Long=1000;
filter:="(&(osgi.enroute.webresource=/google/angular)(&(version>=1.4.4)(!(version>=2.0.0))))”
It turns out that Felix returns the string
“angular.js,angular-resource.js,angular-route.js” and not the list
[“angular.js”,”angular-resource.js”,”angular-route.js”] as it must
according to specifications.
This confuses the web resource code and it looks for the wrong names.
----------------------
With the config in karaf 4.0.5
org.osgi.framework.system.capabilities= \
${eecap-${java.specification.version}}, \
osgi.service;effective:=active;objectClass=org.osgi.service.packageadmin.PackageAdmin,
\
osgi.service;effective:=active;objectClass=org.osgi.service.resolver.Resolver,
\
osgi.service;effective:=active;objectClass=org.osgi.service.startlevel.StartLevel,
\
osgi.service;effective:=active;objectClass=org.osgi.service.url.URLHandlers
eecap-1.8= osgi.ee; osgi.ee="OSGi/Minimum";
version:List<Version>="1.0,1.1,1.2", \
osgi.ee; osgi.ee="JavaSE";
version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8"
This requirement should be resolved
filter:="(&(osgi.ee=JavaSE)(version=1.8))"
but it doesn't seem to be resolving. Is there a way to see if
org.osgi.framework.system.capabilities is returning the correct
capabilities.
Thanks for any help,
David