Bug 38341 [reconciling] NewNotPresentException in Java Outline view
build M20030602 - in a self-hosting workspace created using R2.1, - I reimported binaries using build M20030602 (latest 2.1.1 integration build) - it failed with the following dialog: title: Problem while opening message: Cannot open input element: Reason: D:/eclipse-M20030602/eclipse/startup.jar [in org.eclipse.platform] does not exist. But the startup.jar does exist and seems well-formed. I had previously attached source for this jar, but did not otherwise change it. The log has the following. I only did one import attempt, but the stack is repeated 3 times for some reason. You can ignore the first entry relating to the map file validator. !SESSION Jun 02, 2003 13:38:39.595 --------------------------------------------- java.fullversion=J2RE 1.3.1 IBM J9 build 20030502 (JIT enabled) BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US Command-line arguments: -os win32 -ws win32 -arch x86 -data d:\eclipse- R2_1_maintenance\plugins -showlocation -install file:D:/eclipse- M20030602/eclipse/ !ENTRY org.eclipse.core.resources 2 1 Jun 02, 2003 13:38:39.595 !MESSAGE Skipping builder org.eclipse.releng.tools.mapFileValidator for project org.eclipse.releng. Either the builder is missing from the install, or it belongs to a project nature that is missing or disabled. !ENTRY org.eclipse.jdt.ui 4 10001 Jun 02, 2003 13:46:05.637 !MESSAGE Internal Error !STACK 1 Java Model Exception: Java Model Status [Main [in Main.class [in org.eclipse.core.launcher [in D:/eclipse-M20030602/eclipse/startup.jar [in org.eclipse.platform]]]] does not exist.] at java.lang.Throwable.<init>(Throwable.java) at java.lang.Throwable.<init>(Throwable.java) at org.eclipse.core.runtime.CoreException.<init>(CoreException.java:35) at org.eclipse.jdt.core.JavaModelException.<init> (JavaModelException.java:64) at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException (JavaElement.java:481) at org.eclipse.jdt.internal.core.BinaryType.getChildren (BinaryType.java:167) at org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage$ChildrenProvider.hasChild ren(JavaOutlinePage.java) at org.eclipse.jface.viewers.AbstractTreeViewer.isExpandable (AbstractTreeViewer.java) at org.eclipse.jface.viewers.AbstractTreeViewer.updatePlus (AbstractTreeViewer.java) at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem (AbstractTreeViewer.java) at org.eclipse.jface.viewers.AbstractTreeViewer$1.run (AbstractTreeViewer.java) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java) at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren (AbstractTreeViewer.java) at org.eclipse.jface.viewers.AbstractTreeViewer$5.run (AbstractTreeViewer.java:729) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection (StructuredViewer.java:801) at org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged (AbstractTreeViewer.java:721) at org.eclipse.jface.viewers.ContentViewer.setInput (ContentViewer.java:238) at org.eclipse.jface.viewers.StructuredViewer.setInput (StructuredViewer.java:991) at org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.setInput (JavaOutlinePage.java:1014) at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor.setOutlinePageInput (ClassFileEditor.java:532) at org.eclipse.jdt.internal.ui.javaeditor.JavaEditor.doSetInput (JavaEditor.java:1575) at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor.doSetInput (ClassFileEditor.java:597) at org.eclipse.ui.texteditor.AbstractTextEditor.setInput (AbstractTextEditor.java:2410) at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor$InputUpdater.run (ClassFileEditor.java:407) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages (Synchronizer.java) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block (ModalContext.java) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:261) at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:758) at org.eclipse.pde.internal.ui.wizards.imports.PluginImportWizard.performFinish (PluginImportWizard.java:145) at org.eclipse.jface.wizard.WizardDialog.finishPressed (WizardDialog.java:608) at org.eclipse.jface.wizard.WizardDialog.buttonPressed (WizardDialog.java:321) at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:423) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java) at org.eclipse.jface.window.Window.runEventLoop(Window.java:583) at org.eclipse.jface.window.Window.open(Window.java:563) at org.eclipse.ui.actions.ImportResourcesAction.run (ImportResourcesAction.java:96) at org.eclipse.jface.action.Action.runWithEvent(Action.java:842) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:456) at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent (ActionContributionItem.java) at org.eclipse.jface.action.ActionContributionItem.access$0 (ActionContributionItem.java) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent (ActionContributionItem.java) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1402) at org.eclipse.ui.internal.Workbench.run(Workbench.java:1385) at org.eclipse.core.internal.boot.InternalBootLoader.run (InternalBootLoader.java:858) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461) at java.lang.reflect.AccessibleObject.invokeL(AccessibleObject.java:207) at java.lang.reflect.Method.invoke(Method.java:271) at org.eclipse.core.launcher.Main.basicRun(Main.java:291) at org.eclipse.core.launcher.Main.run(Main.java:747) at org.eclipse.core.launcher.Main.main(Main.java:583) !ENTRY org.eclipse.jdt.core 4 969 Jun 02, 2003 13:46:05.787 !MESSAGE Main [in Main.class [in org.eclipse.core.launcher [in D:/eclipse- M20030602/eclipse/startup.jar [in org.eclipse.platform]]]] does not exist. !ENTRY org.eclipse.jdt.ui 4 10001 Jun 02, 2003 13:46:05.797 !MESSAGE Internal Error !STACK 1 Java Model Exception: Java Model Status [Main [in Main.class [in org.eclipse.core.launcher [in D:/eclipse-M20030602/eclipse/startup.jar [in org.eclipse.platform]]]] does not exist.] at java.lang.Throwable.<init>(Throwable.java) at java.lang.Throwable.<init>(Throwable.java) at org.eclipse.core.runtime.CoreException.<init>(CoreException.java:35) at org.eclipse.jdt.core.JavaModelException.<init> (JavaModelException.java:64) at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException (JavaElement.java:481) at org.eclipse.jdt.internal.core.BinaryType.getChildren (BinaryType.java:167) at org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage$ChildrenProvider.getChild ren(JavaOutlinePage.java) at org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren (AbstractTreeViewer.java) at org.eclipse.jface.viewers.StructuredViewer.getFilteredChildren (StructuredViewer.java) at org.eclipse.jface.viewers.StructuredViewer.getSortedChildren (StructuredViewer.java) at org.eclipse.jface.viewers.AbstractTreeViewer$1.run (AbstractTreeViewer.java) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java) at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren (AbstractTreeViewer.java) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel (AbstractTreeViewer.java) at org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage$JavaOutlineViewer.interna lExpandToLevel(JavaOutlinePage.java) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel (AbstractTreeViewer.java) at org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage$JavaOutlineViewer.interna lExpandToLevel(JavaOutlinePage.java) at org.eclipse.jface.viewers.AbstractTreeViewer$5.run (AbstractTreeViewer.java:730) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection (StructuredViewer.java:801) at org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged (AbstractTreeViewer.java:721) at org.eclipse.jface.viewers.ContentViewer.setInput (ContentViewer.java:238) at org.eclipse.jface.viewers.StructuredViewer.setInput (StructuredViewer.java:991) at org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.setInput (JavaOutlinePage.java:1014) at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor.setOutlinePageInput (ClassFileEditor.java:532) at org.eclipse.jdt.internal.ui.javaeditor.JavaEditor.doSetInput (JavaEditor.java:1575) at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor.doSetInput (ClassFileEditor.java:597) at org.eclipse.ui.texteditor.AbstractTextEditor.setInput (AbstractTextEditor.java:2410) at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor$InputUpdater.run (ClassFileEditor.java:407) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages (Synchronizer.java) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block (ModalContext.java) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:261) at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:758) at org.eclipse.pde.internal.ui.wizards.imports.PluginImportWizard.performFinish (PluginImportWizard.java:145) at org.eclipse.jface.wizard.WizardDialog.finishPressed (WizardDialog.java:608) at org.eclipse.jface.wizard.WizardDialog.buttonPressed (WizardDialog.java:321) at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:423) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java) at org.eclipse.jface.window.Window.runEventLoop(Window.java:583) at org.eclipse.jface.window.Window.open(Window.java:563) at org.eclipse.ui.actions.ImportResourcesAction.run (ImportResourcesAction.java:96) at org.eclipse.jface.action.Action.runWithEvent(Action.java:842) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:456) at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent (ActionContributionItem.java) at org.eclipse.jface.action.ActionContributionItem.access$0 (ActionContributionItem.java) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent (ActionContributionItem.java) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1402) at org.eclipse.ui.internal.Workbench.run(Workbench.java:1385) at org.eclipse.core.internal.boot.InternalBootLoader.run (InternalBootLoader.java:858) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461) at java.lang.reflect.AccessibleObject.invokeL(AccessibleObject.java:207) at java.lang.reflect.Method.invoke(Method.java:271) at org.eclipse.core.launcher.Main.basicRun(Main.java:291) at org.eclipse.core.launcher.Main.run(Main.java:747) at org.eclipse.core.launcher.Main.main(Main.java:583) !ENTRY org.eclipse.jdt.core 4 969 Jun 02, 2003 13:46:05.957 !MESSAGE Main [in Main.class [in org.eclipse.core.launcher [in D:/eclipse- M20030602/eclipse/startup.jar [in org.eclipse.platform]]]] does not exist. !ENTRY org.eclipse.jdt.ui 4 10001 Jun 02, 2003 13:46:05.977 !MESSAGE Internal Error !STACK 1 Java Model Exception: Java Model Status [Main [in Main.class [in org.eclipse.core.launcher [in D:/eclipse-M20030602/eclipse/startup.jar [in org.eclipse.platform]]]] does not exist.] at java.lang.Throwable.<init>(Throwable.java) at java.lang.Throwable.<init>(Throwable.java) at org.eclipse.core.runtime.CoreException.<init>(CoreException.java:35) at org.eclipse.jdt.core.JavaModelException.<init> (JavaModelException.java:64) at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException (JavaElement.java:481) at org.eclipse.jdt.internal.core.BinaryType.getChildren (BinaryType.java:167) at org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage$ChildrenProvider.getChild ren(JavaOutlinePage.java) at org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren (AbstractTreeViewer.java) at org.eclipse.jface.viewers.StructuredViewer.getFilteredChildren (StructuredViewer.java) at org.eclipse.jface.viewers.StructuredViewer.getSortedChildren (StructuredViewer.java) at org.eclipse.jface.viewers.AbstractTreeViewer$1.run (AbstractTreeViewer.java) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java) at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren (AbstractTreeViewer.java) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpand (AbstractTreeViewer.java:813) at org.eclipse.jface.viewers.AbstractTreeViewer.setSelectionToWidget (AbstractTreeViewer.java) at org.eclipse.jface.viewers.StructuredViewer.setSelectionToWidget (StructuredViewer.java:1053) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection (StructuredViewer.java:808) at org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged (AbstractTreeViewer.java:721) at org.eclipse.jface.viewers.ContentViewer.setInput (ContentViewer.java:238) at org.eclipse.jface.viewers.StructuredViewer.setInput (StructuredViewer.java:991) at org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.setInput (JavaOutlinePage.java:1014) at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor.setOutlinePageInput (ClassFileEditor.java:532) at org.eclipse.jdt.internal.ui.javaeditor.JavaEditor.doSetInput (JavaEditor.java:1575) at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor.doSetInput (ClassFileEditor.java:597) at org.eclipse.ui.texteditor.AbstractTextEditor.setInput (AbstractTextEditor.java:2410) at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor$InputUpdater.run (ClassFileEditor.java:407) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages (Synchronizer.java) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block (ModalContext.java) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:261) at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:758) at org.eclipse.pde.internal.ui.wizards.imports.PluginImportWizard.performFinish (PluginImportWizard.java:145) at org.eclipse.jface.wizard.WizardDialog.finishPressed (WizardDialog.java:608) at org.eclipse.jface.wizard.WizardDialog.buttonPressed (WizardDialog.java:321) at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:423) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java) at org.eclipse.jface.window.Window.runEventLoop(Window.java:583) at org.eclipse.jface.window.Window.open(Window.java:563) at org.eclipse.ui.actions.ImportResourcesAction.run (ImportResourcesAction.java:96) at org.eclipse.jface.action.Action.runWithEvent(Action.java:842) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:456) at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent (ActionContributionItem.java) at org.eclipse.jface.action.ActionContributionItem.access$0 (ActionContributionItem.java) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent (ActionContributionItem.java) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1402) at org.eclipse.ui.internal.Workbench.run(Workbench.java:1385) at org.eclipse.core.internal.boot.InternalBootLoader.run (InternalBootLoader.java:858) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461) at java.lang.reflect.AccessibleObject.invokeL(AccessibleObject.java:207) at java.lang.reflect.Method.invoke(Method.java:271) at org.eclipse.core.launcher.Main.basicRun(Main.java:291) at org.eclipse.core.launcher.Main.run(Main.java:747) at org.eclipse.core.launcher.Main.main(Main.java:583) !ENTRY org.eclipse.jdt.core 4 969 Jun 02, 2003 13:46:06.147 !MESSAGE Main [in Main.class [in org.eclipse.core.launcher [in D:/eclipse- M20030602/eclipse/startup.jar [in org.eclipse.platform]]]] does not exist.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaOutlinePage.java
public JavaOutlineViewer(Tree tree) {
					super(tree);
					setAutoExpandLevel(ALL_LEVELS);
					setUseHashlookup(true);
				}
				
				/**
				 * Investigates the given element change event and if affected
				 * incrementally updates the Java outline.
				 * 
				 * @param delta the Java element delta used to reconcile the Java outline
				 */
				public void reconcile(IJavaElementDelta delta) {
					fReorderedMembers= false;
					fForceFireSelectionChanged= false;
					if (getSorter() == null) {
						if (fTopLevelTypeOnly
							&& delta.getElement() instanceof IType
							&& (delta.getKind() & IJavaElementDelta.ADDED) != 0)
						{
							refresh(true);
						} else {
							Widget w= findItem(fInput);
							if (w != null && !w.isDisposed())
								update(w, delta);
							if (fForceFireSelectionChanged)
								fireSelectionChanged(new SelectionChangedEvent(getSite().getSelectionProvider(), this.getSelection()));
							if (fReorderedMembers) {
								refresh(false);