Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 337383 - Progress Provider - NullPointerException in AbstractApplication
Summary: Progress Provider - NullPointerException in AbstractApplication
Status: RESOLVED FIXED
Alias: None
Product: Riena
Classification: RT
Component: UI (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows Vista
: P3 normal (vote)
Target Milestone: 3.0.0   Edit
Assignee: Nobody - feel free to take it CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-16 18:57 EST by Elias Volanakis CLA
Modified: 2011-02-28 13:31 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Elias Volanakis CLA 2011-02-16 18:57:58 EST
The method disableEclipseProgressManager() in AbstractApplication causes an NPE and prevents startup. Seen with the 3.7.M5 target.

Reproducible with: 

- Mail Sample (Riena UI)
- Riena Demo Client

Reason is that there is no Display when this is called.

Stack trace:

java.lang.NullPointerException
	at org.eclipse.jface.resource.JFaceResources.getResources(JFaceResources.java:207)
	at org.eclipse.jface.resource.JFaceResources.getImageRegistry(JFaceResources.java:404)
	at org.eclipse.ui.internal.progress.ProgressManager.setUpImage(ProgressManager.java:598)
	at org.eclipse.ui.internal.progress.ProgressManager.setUpImages(ProgressManager.java:377)
	at org.eclipse.ui.internal.progress.ProgressManager.<init>(ProgressManager.java:363)
	at org.eclipse.ui.internal.progress.ProgressManager.getInstance(ProgressManager.java:149)
	at org.eclipse.riena.navigation.ui.application.AbstractApplication.disableEclipseProgressManager(AbstractApplication.java:83)
	at org.eclipse.riena.navigation.ui.application.AbstractApplication.installProgressProviderBridge(AbstractApplication.java:70)
	at org.eclipse.riena.navigation.ui.application.AbstractApplication.start(AbstractApplication.java:65)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Comment 1 Elias Volanakis CLA 2011-02-16 18:58:34 EST
I'm commenting #disableProgressManager out temporarily - please enable to reproduce
Comment 2 Nobody - feel free to take it CLA 2011-02-18 04:43:45 EST
Could reproduce the problem running the Riena Demo Client.
Comment 3 Nobody - feel free to take it CLA 2011-02-18 04:45:11 EST
Added the Method void initializeUI() in AbstractApplication as a hook to create the PlatformUi Display instance. 
Implemented in SwtApplication.
Comment 4 Elias Volanakis CLA 2011-02-21 00:45:10 EST
Heiko, das hat nicht geholfen. In RAP bekomme ich noch folgende Exception:

java.lang.NullPointerException
	at org.eclipse.ui.internal.progress.ProgressInfoItem.init(ProgressInfoItem.java:183)
	at org.eclipse.ui.internal.progress.ProgressManager$ProgressManagerProvider.getInstance(ProgressManager.java:106)
	at org.eclipse.ui.internal.progress.ProgressManager.getInstance(ProgressManager.java:188)
	at org.eclipse.riena.navigation.ui.application.AbstractApplication.disableEclipseProgressManager(AbstractApplication.java:90)
	at org.eclipse.riena.navigation.ui.application.AbstractApplication.installProgressProviderBridge(AbstractApplication.java:76)
	at org.eclipse.riena.navigation.ui.application.AbstractApplication.start(AbstractApplication.java:65)
	at org.eclipse.rap.ui.internal.application.EntrypointApplicationWrapper.createUI(EntrypointApplicationWrapper.java:27)
	at org.eclipse.rwt.internal.lifecycle.EntryPointManager.createUI(EntryPointManager.java:92)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:242)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:111)
	at java.lang.Thread.run(Unknown Source)
	at org.eclipse.rwt.internal.lifecycle.UIThread.run(UIThread.java:102)
	
Bitte probiere es beim naechsten Mal auch mit RAP :-)
Comment 5 Nobody - feel free to take it CLA 2011-02-24 12:01:54 EST
I try to reproduce ..
Comment 6 Nobody - feel free to take it CLA 2011-02-24 12:04:08 EST
Can reproduce the bug under RAP
Comment 7 Nobody - feel free to take it CLA 2011-02-24 12:27:16 EST
I now use the RapDetector to check if RAP is available before disabling the ProgressManager. Behaviour of ProgressManager in RAP and indigo RCP is different concerning registration of job listeners.
Code now works for rap and rcp.