Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 336297

Summary: [launch] Undefined context while filtering dialog/window contexts
Product: [Eclipse Project] Platform Reporter: Guy Korland <gkorland>
Component: DebugAssignee: Platform-Debug-Inbox <platform-debug-inbox>
Status: RESOLVED INVALID QA Contact:
Severity: major    
Priority: P3 CC: pawel.1.piech, prakash, pwebster
Version: 3.6.1   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Guy Korland CLA 2011-02-03 18:52:45 EST
Build Identifier: M20100909-0800

When I click on "Run Configuration..." I get the following:

Undefined context while filtering dialog/window contexts:

org.eclipse.core.commands.common.NotDefinedException: Cannot get the parent identifier from an undefined context. org.eclipse.ui.externaltools.ExternalToolsSet
at org.eclipse.core.commands.contexts.Context.getParentId(Context.java:201)
at org.eclipse.jface.bindings.BindingManager.createFilteredContextTreeFor(BindingManager.java:825)
at org.eclipse.jface.bindings.BindingManager.recomputeBindings(BindingManager.java:1721)
at org.eclipse.jface.bindings.BindingManager.getActiveBindings(BindingManager.java:921)
at org.eclipse.jface.bindings.BindingManager.isPerfectMatch(BindingManager.java:1625)
at org.eclipse.jface.action.ExternalActionManager$CommandCallback.isAcceleratorInUse(ExternalActionManager.java:347)
at org.eclipse.jface.action.MenuManager.update(MenuManager.java:898)
at org.eclipse.jface.action.MenuManager.update(MenuManager.java:876)
at org.eclipse.ui.internal.Workbench.updateActiveWorkbenchWindowMenuManager(Workbench.java:3278)
at org.eclipse.ui.internal.Workbench.access$0(Workbench.java:3238)
at org.eclipse.ui.internal.Workbench$2.bindingManagerChanged(Workbench.java:3224)
at org.eclipse.jface.bindings.BindingManager.fireBindingManagerChanged(BindingManager.java:900)
at org.eclipse.jface.bindings.BindingManager.setActiveBindings(BindingManager.java:2176)
at org.eclipse.jface.bindings.BindingManager.clearSolution(BindingManager.java:442)
at org.eclipse.jface.bindings.BindingManager.schemeChanged(BindingManager.java:2132)
at org.eclipse.jface.bindings.Scheme.fireSchemeChanged(Scheme.java:186)
at org.eclipse.jface.bindings.Scheme.undefine(Scheme.java:287)
at org.eclipse.ui.internal.keys.BindingPersistence.readSchemesFromRegistry(BindingPersistence.java:1046)
at org.eclipse.ui.internal.keys.BindingPersistence.reRead(BindingPersistence.java:1405)
at org.eclipse.ui.internal.menus.WorkbenchMenuService.handleRegistryChanges(WorkbenchMenuService.java:1106)
at org.eclipse.ui.internal.menus.WorkbenchMenuService$2.run(WorkbenchMenuService.java:274)
at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:164)
at org.eclipse.ui.internal.UISynchronizer$3.run(UISynchronizer.java:158)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
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:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
at org.eclipse.equinox.launcher.Main.run(Main.java:1407)


Reproducible: Always

Steps to Reproduce:
click on "Run Configuration..."
Comment 1 Prakash Rangaraj CLA 2011-02-04 01:48:28 EST
Apart from standard SDK, have you installed any other plugins?
Comment 2 Guy Korland CLA 2011-02-04 01:56:49 EST
Subclipse, GWT,
Comment 3 Guy Korland CLA 2011-02-04 01:59:24 EST
I also see the following in the error log:

java.lang.NullPointerException
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.updateButtons(LaunchConfigurationsDialog.java:1518)
at org.eclipse.debug.ui.AbstractLaunchConfigurationTab.updateLaunchConfigurationDialog(AbstractLaunchConfigurationTab.java:100)
at org.eclipse.debug.ui.AbstractLaunchConfigurationTab$1.runInUIThread(AbstractLaunchConfigurationTab.java:423)
at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:95)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
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:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Comment 4 Prakash Rangaraj CLA 2011-02-04 02:05:00 EST
I suspect GWT plugin. Can you try Eclipse without it and let us know whether its reproducible?
Comment 5 Guy Korland CLA 2011-02-04 02:16:23 EST
It happens also without GWT
Comment 6 Prakash Rangaraj CLA 2011-02-04 02:17:19 EST
Assigning to Debug for investigation.
Comment 7 Paul Webster CLA 2011-02-04 07:22:19 EST
(In reply to comment #3)
> I also see the following in the error log:

Please attach the error log, preferable when the one that includes the first Undefined Context warning.

Did you install the software (GWT, etc) and then hit "Apply Now"?

But you mentioned you installed without GWT and had the same problem, and it's not the kind of thing that should survive restarts.  Your install without GWT, is it an OS package (like on linux) or did you unzip/untar something from download.eclipse.org?

In this case "org.eclipse.ui.externaltools.ExternalToolsSet" is a context defined for an actionSet, and its parent context is "org.eclipse.ui.contexts.actionSet"

PW
Comment 8 Pawel Piech CLA 2011-06-08 14:52:31 EDT
Please provide full log and reopen.

One oddity here is that the given trace in comment #3 points to line (1518) in LaunchConfigurationsDialog, which doesn't exist.