I'm a bit confused by the usecase. Are these real bundles or just inner jars which you use as inner libraries? If they are real bundles then why don't you install them as real bundles instead?
The bundleresource protocol uses the port as an index into the list of resources of a given name (e.g plugin.xml). In your case it sounds like you have more resources named META-INF/MANIFEST.MF in your bundle than you do plugin.xml so the two lists and indexes do not match up. For example, imagine you have a bundle which has jars A, B, C, D which all have META-INF/MANIFEST.MF resources but only C and D have plugin.xml. A call to classloader.getResources("plugin.xml") gives you something like this: bundleresource://26:0/plugin.xml (C) bundleresource://26:1/plugin.xml (D) A call to classloader.getResources("META-INF/MANIFEST.MF") gives you something like this: bundleresource://26:0/META-INF/MANIFEST.MF (base bundle) bundleresource://26:1/META-INF/MANIFEST.MF (A) bundleresource://26:2/META-INF/MANIFEST.MF (B) bundleresource://26:3/META-INF/MANIFEST.MF (C) bundleresource://26:4/META-INF/MANIFEST.MF (D) As you can see the resource indexes will not match for the two different resources (plugin.xml and METE-INF/MANIFEST.MF) from C and D. Tom Erik Bengtson <[EMAIL PROTECTED]> Sent by: [EMAIL PROTECTED] 08/27/2007 01:58 PM Please respond to Equinox development mailing list <equinox-dev@eclipse.org> To Equinox development mailing list <equinox-dev@eclipse.org> cc Subject [equinox-dev] getResources : bundleresource Hi, I have some bundles (B,C,D) that are not deployed as osgi bundles, but as libraries within a bundle (A). In bundle A, I have a custom internal registry of the plugin.xml from files (B,C,D). 1) find and load all plugin.xml files using classloader.getResources() I get an enumeration of: bundleresource://26:3/plugin.xml (D) bundleresource://26:2/plugin.xml (C) bundleresource://26:1/plugin.xml (B) So far so good, but now I have to load the corresponding /META-INF/MANIFEST.MF files from each bundle (B,C,D). 2) do: -- new URL("bundleresource://26:3/META-INF/MANIFEST.MF"); My problem is that it returns the MANIFEST.MF from bundle (C), instead of bundle (D). What am I doing wrong? Background: My project JPOX, a JDO/JPA implementation, is OSGi compatible and uses Eclipse Extension/Extension Points for declarative services. I have an internal registry of bundles/extension/extension points when running outside an osgi container. Regards, Erik Bengtson http://jpox.org _______________________________________________ equinox-dev mailing list equinox-dev@eclipse.org https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________ equinox-dev mailing list equinox-dev@eclipse.org https://dev.eclipse.org/mailman/listinfo/equinox-dev