Yes, you are probably correct...at least it sounds reasonable.
What we probably need to do is modify LocalRepositoryImpl to special
case the system bundle to calculate its exported packages differently...
Please feel free to look into this issue and/or create a JIRA issue
against OBR.
Thanks for follow up.
-> richard
Hampel, Michael wrote:
Hello,
After debugging the felix bundlerepository I think I found the problem why the
packages are not
Found.
When looking at the code of LocalRepositoryImpl the
initialization(initialize()) of a LocalResourceImpl instance
Determines the exported packages of a local resource by examining its manifest
entries.
Now, the system bundle (in my case equinox but I also think Felix) is not
exporting javax packages in its
Manifest file - this is triggered via the org.osgi.framework.system.packages
property (I think).
Therefore the OBR Resolver does not find these packages from the system bundle.
If I use the PackageAdmin to list the packages exported by the SystemBundle
then the framework system packages
Are included (I think this is also how the Felix GUI gets the exported packages
for a bundle to display).
Another solution was to read the FRAMEWORK_SYSTEMPACKAGES property from the
BundleContext to get the exported
System packages.
One of these solutions could be used to add the exported system packages to the
capabilities of the SystemBundle.
Please let me know if I am on the right track and if so which solution you would prefer and if the
LocalRepositoryImpl could be changed.
Thanx in advance for any help,
Michael
-----Ursprüngliche Nachricht-----
Von: Hampel, Michael
Gesendet: Donnerstag, 20. März 2008 13:21
An: [email protected]
Betreff: AW: obr resolving and system packages
Hello again,
I have now listed the exported packages of my system bundle and it contains all
javax and org.xml packages
The OBR resolver is not able to find.
Also the runtime is able to resolve and start the bundle with these package
dependencies.
Could you please explain how the OBR resolver would find these packages?
Thanx in advance,
Michael
-----Ursprüngliche Nachricht-----
Von: Hampel, Michael
Gesendet: Donnerstag, 20. März 2008 12:13
An: [email protected]
Betreff: AW: obr resolving and system packages
Hello Richard,
Thank you for your answer.
I actually tried it.
I have a directory where I put all my bundles in and which I use as the repository.
I then start the OSGi runtime (in my case equinox) plus the necessary bundles for OBR handling
within eclipse with the help of a run configuration.
By saying
"If your local system bundle exports javax.swing"
do you mean that if I would start felix with a configuration file that includes
org.osgi.framework.system.packages=
${jre-${java.specification.version}}
plus all java platform package export properties like
jre-1.3=, \
javax.accessibility; \
javax.accessibility.resources; \
javax.naming; \
.....
Then the OBR Resolver should find it from the system bundle?
Thank you again for your help,
Michael
-----Ursprüngliche Nachricht-----
Von: Richard S. Hall [mailto:[EMAIL PROTECTED]
Gesendet: Donnerstag, 20. März 2008 11:08
An: [email protected]
Betreff: Re: obr resolving and system packages
Did you actually try this or are you just making an assumption?
OBR treats the locally installed bundles as a repository too. So, if
your local system bundle exports javax.swing, then it should resolve the
package correctly...at least that is how it is supposed to work.
-> richard
Hampel, Michael wrote:
Hello,
how do I deal with system package dependencies like javax.swing - that
an OSGi runtime would be able to resolve from the system classpath -
in the OBR resolving process.
If a resource in my repository.xml has a require element for javax.swing
the Resolver tries to find the dependency in one of my specified
repositories
but will not find it - so the OBR resolving for this resource will fail
although it would resolve in the runtime.
Is there a way to add system packages to the OBR resolving process or do
I have to specify all aof these packages as optional or do I see
this completely wrong?
Thanx in advance for any help,
Michael
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]