Community
Participate
Working Groups
- was running a target Eclipse from a dev env Eclipse - deleted the bin directory from the workspace - tried to open a preference page (it was the Java Console one, but I doubt it matters) Got an error dialog and the following walkbacks in the log. The NoClassDefFoundError's are not surprising, but it shouldn't cause a NPE as well. Note that the NPE happened a few of seconds later, probably while trying to selecting other preference pages. Log: Thu Jul 26 10:10:11 EDT 2001 4 org.eclipse.core.runtime 0 Unhandled exception caught in event loop. java.lang.NoClassDefFoundError: org/eclipse/jface/preference/ColorFieldEditor$1 at org.eclipse.jface.preference.ColorFieldEditor.getChangeControl(ColorFieldEditor.java:142) at org.eclipse.jface.preference.ColorFieldEditor.doFillIntoGrid(ColorFieldEditor.java:93) at org.eclipse.jface.preference.FieldEditor.createControl(FieldEditor.java:220) at org.eclipse.jface.preference.FieldEditor.<init>(FieldEditor.java:114) at org.eclipse.jface.preference.ColorFieldEditor.<init>(ColorFieldEditor.java:58) at org.eclipse.debug.internal.ui.ConsolePreferencePage.createFieldEditors(ConsolePreferencePage.java:49) at org.eclipse.jface.preference.FieldEditorPreferencePage.createContents(FieldEditorPreferencePage.java:195) at org.eclipse.jface.preference.PreferencePage.createControl(PreferencePage.java:194) at org.eclipse.debug.internal.ui.ConsolePreferencePage.createControl(ConsolePreferencePage.java:37) at org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:658) at org.eclipse.jface.preference.PreferenceDialog$4.run(PreferenceDialog.java:366) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:83) at org.eclipse.jface.preference.PreferenceDialog$3.widgetSelected(PreferenceDialog.java:358) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:85) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code)) at org.eclipse.jface.window.Window.runEventLoop(Window.java(Compiled Code)) at org.eclipse.jface.window.Window.open(Window.java:517) at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:47) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:408) at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent(ActionContributionItem.java:362) at org.eclipse.jface.action.ActionContributionItem.access$0(ActionContributionItem.java:353) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent(ActionContributionItem.java:47) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code)) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java(Compiled Code)) at org.eclipse.ui.internal.Workbench.run(Workbench.java:622) at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:815) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:285) at java.lang.reflect.Method.invoke(Native Method) at org.eclipse.core.launcher.Main.basicRun(Main.java:119) at org.eclipse.core.launcher.Main.run(Main.java:466) at org.eclipse.core.launcher.UIMain.main(UIMain.java:52) Log: Thu Jul 26 10:10:11 EDT 2001 4 org.eclipse.core.runtime 0 org/eclipse/jface/preference/ColorFieldEditor$1 java.lang.NoClassDefFoundError: org/eclipse/jface/preference/ColorFieldEditor$1 at org.eclipse.jface.preference.ColorFieldEditor.getChangeControl(ColorFieldEditor.java:142) at org.eclipse.jface.preference.ColorFieldEditor.doFillIntoGrid(ColorFieldEditor.java:93) at org.eclipse.jface.preference.FieldEditor.createControl(FieldEditor.java:220) at org.eclipse.jface.preference.FieldEditor.<init>(FieldEditor.java:114) at org.eclipse.jface.preference.ColorFieldEditor.<init>(ColorFieldEditor.java:58) at org.eclipse.debug.internal.ui.ConsolePreferencePage.createFieldEditors(ConsolePreferencePage.java:49) at org.eclipse.jface.preference.FieldEditorPreferencePage.createContents(FieldEditorPreferencePage.java:195) at org.eclipse.jface.preference.PreferencePage.createControl(PreferencePage.java:194) at org.eclipse.debug.internal.ui.ConsolePreferencePage.createControl(ConsolePreferencePage.java:37) at org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:658) at org.eclipse.jface.preference.PreferenceDialog$4.run(PreferenceDialog.java:366) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:83) at org.eclipse.jface.preference.PreferenceDialog$3.widgetSelected(PreferenceDialog.java:358) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:85) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code)) at org.eclipse.jface.window.Window.runEventLoop(Window.java(Compiled Code)) at org.eclipse.jface.window.Window.open(Window.java:517) at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:47) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:408) at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent(ActionContributionItem.java:362) at org.eclipse.jface.action.ActionContributionItem.access$0(ActionContributionItem.java:353) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent(ActionContributionItem.java:47) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code)) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java(Compiled Code)) at org.eclipse.ui.internal.Workbench.run(Workbench.java:622) at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:815) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:285) at java.lang.reflect.Method.invoke(Native Method) at org.eclipse.core.launcher.Main.basicRun(Main.java:119) at org.eclipse.core.launcher.Main.run(Main.java:466) at org.eclipse.core.launcher.UIMain.main(UIMain.java:52) Log: Thu Jul 26 10:10:16 EDT 2001 4 org.eclipse.core.runtime 0 Unhandled exception caught in event loop. java.lang.NullPointerException at org.eclipse.jface.preference.PreferencePage.doComputeSize(PreferencePage.java:273) at org.eclipse.jface.preference.PreferencePage.computeSize(PreferencePage.java:136) at org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:662) at org.eclipse.jface.preference.PreferenceDialog$4.run(PreferenceDialog.java:366) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:83) at org.eclipse.jface.preference.PreferenceDialog$3.widgetSelected(PreferenceDialog.java:358) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:85) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code)) at org.eclipse.jface.window.Window.runEventLoop(Window.java(Compiled Code)) at org.eclipse.jface.window.Window.open(Window.java:517) at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:47) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:408) at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent(ActionContributionItem.java:362) at org.eclipse.jface.action.ActionContributionItem.access$0(ActionContributionItem.java:353) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent(ActionContributionItem.java:47) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code)) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java(Compiled Code)) at org.eclipse.ui.internal.Workbench.run(Workbench.java:622) at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:815) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:285) at java.lang.reflect.Method.invoke(Native Method) at org.eclipse.core.launcher.Main.basicRun(Main.java:119) at org.eclipse.core.launcher.Main.run(Main.java:466) at org.eclipse.core.launcher.UIMain.main(UIMain.java:52) Log: Thu Jul 26 10:10:16 EDT 2001 4 org.eclipse.core.runtime 0 java.lang.NullPointerException java.lang.NullPointerException at org.eclipse.jface.preference.PreferencePage.doComputeSize(PreferencePage.java:273) at org.eclipse.jface.preference.PreferencePage.computeSize(PreferencePage.java:136) at org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:662) at org.eclipse.jface.preference.PreferenceDialog$4.run(PreferenceDialog.java:366) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:83) at org.eclipse.jface.preference.PreferenceDialog$3.widgetSelected(PreferenceDialog.java:358) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:85) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code)) at org.eclipse.jface.window.Window.runEventLoop(Window.java(Compiled Code)) at org.eclipse.jface.window.Window.open(Window.java:517) at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:47) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:408) at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent(ActionContributionItem.java:362) at org.eclipse.jface.action.ActionContributionItem.access$0(ActionContributionItem.java:353) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent(ActionContributionItem.java:47) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code)) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java(Compiled Code)) at org.eclipse.ui.internal.Workbench.run(Workbench.java:622) at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:815) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:285) at java.lang.reflect.Method.invoke(Native Method) at org.eclipse.core.launcher.Main.basicRun(Main.java:119) at org.eclipse.core.launcher.Main.run(Main.java:466) at org.eclipse.core.launcher.UIMain.main(UIMain.java:52) NOTES: NE (07/26/01 10:18:39 AM) In the code, doComputeSize is: protected Point doComputeSize() { if (descriptionLabel != null) { Point size = body.computeSize(SWT.DEFAULT, SWT.DEFAULT, true); GridData gd = (GridData) descriptionLabel.getLayoutData(); gd.widthHint = size.x; } return getControl().computeSize(SWT.DEFAULT, SWT.DEFAULT, true); } It's only called from computeSize() if getControl() is non-null, so the only thing that could be null here is body. Is it possible for body to be null if descriptionLabel is not null?
PRODUCT VERSION: 0.9 jdk
As with property pages, the preferences dialog should be resilient to failure in its pages.
Defer
Reopen to investigate
This is currently handled by opening a page with no contents and reporting to the console.
New Gerrit change created: https://git.eclipse.org/r/115995
New Gerrit change created: https://git.eclipse.org/r/115996
Gerrit change https://git.eclipse.org/r/115995 was merged to [master]. Commit: http://git.eclipse.org/c/www.eclipse.org/eclipse.org-common.git/commit/?id=870894edcac009d0a417d42e687d3fde1de29ab9
Gerrit change https://git.eclipse.org/r/115996 was merged to [master]. Commit: http://git.eclipse.org/c/www.eclipse.org/org.git/commit/?id=4226fe2619c68752a3d25ebb34e93467c97bffe6