|
|
|
|
|
Re: importPreferences throws exception [message #132732 is a reply to message #132722] |
Wed, 13 May 2009 14:48 |
Rüdiger Herrmann Messages: 581 Registered: July 2009 |
Senior Member |
|
|
Roland wrote:
> Oh sorry, just paste old one again.
>
> public class Application implements IEntryPoint {
> private Display display;
>
> public int createUI() {
> ISessionStore store = RWT.getSessionStore();
> store.addSessionStoreListener( new MySessionStoreListener() );
> new Preferences().import();
Just follow the stack trace, in ProgressInfoItem.init() the display
is needed to retrieve a system color. If there is none, a NPE occurs.
Does that answer your question?
>
> display = PlatformUI.createDisplay();
>
> return PlatformUI.createAndRunWorkbench( display, new
> ApplicationWorkbenchAdvisor() );
> }
> }
>
> The display is created later (after import the preferences).
>
>
> Roland
>
>
> Rüdiger Herrmann schrieb:
>> Roland,
>>
>> I don't see the difference between the two snippets.
>>
>> Cheers,
>> Rüdiger
>>
>> Roland wrote:
>>> Hi,
>>>
>>> I found the problem.
>>>
>>> In the EntryPoint I created a Display before I import the Preferences.
>>>
>>> public class Application implements IEntryPoint {
>>> private Display display;
>>>
>>> public int createUI() {
>>> display = PlatformUI.createDisplay();
>>> ISessionStore store = RWT.getSessionStore();
>>> store.addSessionStoreListener( new MySessionStoreListener() );
>>> new Preferences().import();
>>> return PlatformUI.createAndRunWorkbench( display, new
>>> ApplicationWorkbenchAdvisor() );
>>> }
>>> }
>>>
>>> Now I changed it to the following.
>>>
>>>
>>> public class Application implements IEntryPoint {
>>> private Display display;
>>>
>>> public int createUI() {
>>> display = PlatformUI.createDisplay();
>>> ISessionStore store = RWT.getSessionStore();
>>> store.addSessionStoreListener( new MySessionStoreListener() );
>>> new Preferences().import();
>>> return PlatformUI.createAndRunWorkbench( display, new
>>> ApplicationWorkbenchAdvisor() );
>>> }
>>> }
>>>
>>> And now there is no exception thrown.
>>>
>>> But I don't really understand this.
>>>
>>> Roland
>>>
>>> Rüdiger Herrmann schrieb:
>>>> Roland,
>>>>
>>>> line 164 in ProgressInfoItem.java points to getWorkbench() or
>>>> getDisplay(). Does any of these return null?
>>>> If so you are most likely running the code outside a session. E.g.
>>>> in Activator#start() or from within a background thread.
>>>>
>>>> HTH
>>>> Rüdiger
|
|
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03736 seconds