Hi,
Section #3.8.2 of R4 spec says the following:
/All mandatory arbitrary attributes (as specified by the exporter, see
Mandatory Attributes on page 45) must be specified in the dynamic import
definition and match./
I suspect it is *not* working in Felix yet. I am using Felix v1.0.4.
Mandatory attributes are considered while resolving static imports, but
not for dynamic imports. I have two bundles that have identical
contents, except that bundle #10 uses regular import, where as bundle
#11 uses dynamic import. They both are trying to load a class foo.A.
Package foo is exported by bundle #12 and it has a mandatory attribute
defined like this:
/
Export-Package = foo;password=foo;mandatory:=password/
As shown below, when I start bundle #10, I get resolution error, where
as bundle #11 happily wires to bundle #12.
-> start 10
org.osgi.framework.BundleException: Unresolved package in bundle 10:
package; (package=foo)
-> start 11
DEBUG: WIRE: 11.0 -> org.osgi.framework -> 0
DEBUG: WIRE: 12.0 -> foo -> 12.0
DEBUG: WIRE: 11.0 -> foo -> 12.0
class foo.A is loaded by 12.0
The diff between manifest files of bundle #10 and #11 is supplied below:
/diff dynamic-importer/target/classes/META-INF/MANIFEST.MF
static-importer/target/classes/META-INF/MANIFEST.MF
5,6c5,6
< Import-Package: org.osgi.framework;version="1.3"
< Bnd-LastModified: 1218274803828
---
> Import-Package: foo,org.osgi.framework;version="1.3"
> Bnd-LastModified: 1218274805799
8c8
< Bundle-Name: dynamic-importer
---
> Bundle-Name: static-importer
12,13c12,13
< Bundle-SymbolicName: sahoo.dynamic-import-mandatory-attr.dynamic-impor
< ter
---
> Bundle-SymbolicName: sahoo.dynamic-import-mandatory-attr.static-import
> er
15d14
< DynamicImport-Package: */
Is this a known issue?
Thanks,
Sahoo
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]