classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Eclipse 3.0


From: Roman Kennke
Subject: Re: Eclipse 3.0
Date: Fri, 02 Jul 2004 20:58:52 +0200

I have found a possible explanation for the exception at eclipse
startup.

I found, that BundleResourceHandler.context is null and therefore the
exception is thrown. This static context field is set in
BundleResoureHandler.setContext(..) which is called in
AbstractFrameworkAdapter.frameworkStart(..)

I searched for where this is called, and found it at the end of
org.eclipse.osgi.framework.internal.core.SystemBundleActivator.start(..)

now look at the stacktrace:

java.lang.NullPointerException
   at
org.eclipse.osgi.framework.adaptor.core.BundleResourceHandler.openConnection 
(BundleResourceHandler.java:138)
   at java.net.URL.openConnection (URL.java:652)
   at java.net.URL.openStream (URL.java:665)
   at
org.eclipse.osgi.framework.internal.core.ManifestLocalization.getResourceBundle 
(ManifestLocalization.java:114)
   at
org.eclipse.osgi.framework.internal.core.ManifestLocalization.getHeaders
(ManifestLocalization.java:52)
   at org.eclipse.osgi.framework.internal.core.AbstractBundle.getHeaders
(AbstractBundle.java:1032)
   at org.eclipse.osgi.framework.internal.core.AbstractBundle.getHeaders
(AbstractBundle.java:982)
   at
org.eclipse.osgi.framework.internal.core.SystemBundleActivator.register
(SystemBundleActivator.java:97)
   at
org.eclipse.osgi.framework.internal.core.SystemBundleActivator.start
(SystemBundleActivator.java:44)


you see, that the exception is thrown during exactly this start(..) call
_before_ frameworkStart(..) is called. So it is very possible that the
context is not yet set at the point where register(..) is called.

The question is, why does this error not occur with Suns VM? Maybe
java.net.URL.openConnection should not go into
org.eclipse.osgi.framework.adaptor.core.BundleResourceHandler.openConnection()
??

another question now is, where is the URL itself constructed. After
spinning through the endless spagetti code (why didn't they write it in
Basic??) I found
org.eclipse.osgi.framework.adapter.core.AbstractBundleData.getEntry as
the method that actually creates the URL.

ok, now I hope this helps more than my last statements..

/Roman

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil


reply via email to

[Prev in Thread] Current Thread [Next in Thread]