[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [equinox-dev] Bootdelegation question
|
We've come across a problem in which
the osgi.compatibility.bootdelegation property might work for us. We noticed
that intermittently, we get a CNFE from one of our bundle's start() methods
when it tries to load one of our own classes from a jar that is on the
boot classpath (not a part of a plugin). Is this a known issue and do you
think in this case that the osgi.compatibility.bootdelegation property
would work? Unfortunately, this isn't easily reproducible and just seems
to happen at random.
We're running on eclipse 3.2.2. I saw
that this property isn't documented until eclipse 3.3. Was this ever back-ported?
Thanks,
Jennifer Carlucci
Lightweight Infrastructure
(949)276-7951
joffter@xxxxxxxxxx
AMEN!
Got it! Woks fine now.thx
Oleg
On Oct 8, 2008, at 2:06 PM, Thomas Watson wrote:
See the osgi.compatibility.bootdelegation option in the
Eclipse Help.
osgi.compatibility.bootdelegation - if set to "true" then the
parent (boot by default) classloader is delegated to as a last resort if
a class or resource cannot be found. The default value is "true".
When launching Equinox under Eclipse the org.eclipse.equinox.launcher is
used to launch the framework (just like when you launch a normal Eclipse
SDK instance). Launching equinox this way enables the boot delegation compatibility
flag by default. Launching equinox with "-jar org.eclipse.osgi ..."
disables this option and Equinox will use strict OSGi delegation rules
for boot delegation.
Tom
<graycol.gif>Oleg Zhurakousky ---10/08/2008
12:49:27 PM---Thanks guys!!! Looks like starting Equinox under Eclipse
makes the difference, although I can't see what that would be (checked
<ecblank.gif>
From:
| <ecblank.gif>
Oleg Zhurakousky <oleg.zhurakousky@xxxxxxxxxxxxxxxx>
|
<ecblank.gif>
To:
| <ecblank.gif>
Equinox development mailing list <equinox-dev@xxxxxxxxxxx>
|
<ecblank.gif>
Date:
| <ecblank.gif>
10/08/2008 12:49 PM
|
<ecblank.gif>
Subject:
| <ecblank.gif>
Re: [equinox-dev] Bootdelegation question |
Thanks guys!!!
Looks like starting Equinox under Eclipse makes the difference, although
I can't see what that would be (checked generated config.ini etc. . . nothing
suspicious)
Starting the same system bundle from the command line renders the expected
results:
> java -Dorg.osgi.framework.bootdelegation=org.w3c.* -jar org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar
-console -clean
osgi>ss
id State Bundle
0 ACTIVE org.eclipse.osgi_3.4.2.R34x_v20080826-1230
1 INSTALLED OSGiBootDelegationBundle_1.0.0
osgi> start 1
class java.lang.String
interface org.w3c.dom.Attr
If bootdelegation option is removed CNFE is thrown during start of the
bundle
Thx
Oleg
On Oct 8, 2008, at 12:57 PM, Stuart McCulloch wrote:
2008/10/9 Oleg Zhurakousky <oleg.zhurakousky@xxxxxxxxxxxxxxxx>
Nice to find you here Rob
Yes I am certain (here are all the options that are set)
-Declipse.ignoreApp=true
-Dosgi.noShutdown=true
-Dosgi.clean=true
One thing I will admit that I am running Equinox within eclipse pde. I'll
try from the command line (not sure if it would make the difference)
see also: http://wiki.eclipse.org/Equinox_Boot_Delegation
(IIRC Equinox doesn't run in "strict" OSGi mode by default...)
Oleg
On Oct 8, 2008, at 12:36 PM, Rob Harrop wrote:
Oleg,
Are you certain that the Equinox you are running in doesn't have the boot
delegation set to include org.w3c.*?
Rob
----- "Oleg Zhurakousky" <oleg.zhurakousky@xxxxxxxxxxxxxxxx>
wrote:
If I am reading the spec correctly only java.* are loaded
from the
boot class path. All other packages must be declared
with explicit imports.
So something like this without
specifying org.osgi.framework.bootdelegation=org.w3c.*
public void start(BundleContext context) throws Exception {
System. out .println(Class.forName( "java.lang.String" ));
System. out .println(Class.forName( "org.w3c.dom.Attr" ));
}
should result in CNFE on the second line.
Well, it actually works just fine without bootdelegation option. I
figured I missed something, so may be some one can steer me in the
right direction.
Cheers
Oleg
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
--
Rob Harrop
SpringSource
Registered in England & Wales - Registration Number 5187766
Registered Office: A2 Yeoman Gate, Yeoman Way, Worthing, West Sussex, BN13
3QZ, UK
This e-mail and any attachments transmitted with it are strictly confidential
and intended solely for the person or entity to whom they are addressed.
Unauthorised use, copying, disclosure or distribution is prohibited. If
you receive this e-mail in error please notify the sender immediately and
then delete it along with any attachments. E-mails should be checked by
the recipient to ensure that there are no viruses and Interface21 does
not accept any responsibility if this is not done. Any views or opinions
presented are solely those of the author and do not necessarily represent
those of Interface21.