Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 122319 - [working sets] JME while trying to delete missing project
Summary: [working sets] JME while trying to delete missing project
Status: RESOLVED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.2   Edit
Hardware: PC Windows XP
: P3 minor (vote)
Target Milestone: 3.2 M5   Edit
Assignee: Dirk Baeumer CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 101475 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-12-29 08:56 EST by Dmitry Stadnik CLA
Modified: 2006-08-03 09:42 EDT (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 Dmitry Stadnik CLA 2005-12-29 08:56:00 EST
1. Create plugin project
2. Add it to some project set; enable working sets view in project explorer (optional?)
3. Launch runtime workbench
4. Import this project in runtime workspace; do not copy
5. Add it to some project set as on step 2 only in runtime workbench
6. Close runtime workbench
7. Delete project with contents
8. Relaunch runtime workbench
=> Project is closed; internal errors are in log whenever I click on the project; it's not possible to delete it; the only way to get rid of it is to remove it from project set.

Java Model Exception: Java Model Status [org.eclipse.gmf.graphdef.draw2dx.editor does not exist]
	at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(JavaElement.java:478)
	at org.eclipse.jdt.internal.core.JavaProject.buildStructure(JavaProject.java:328)
	at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:235)
	at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:498)
	at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:242)
	at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:228)
	at org.eclipse.jdt.internal.core.JavaElement.getChildren(JavaElement.java:183)
	at org.eclipse.jdt.internal.core.JavaProject.getPackageFragmentRoots(JavaProject.java:1811)
	at org.eclipse.jdt.internal.corext.refactoring.RefactoringAvailabilityTester.isInferTypeArgumentsAvailable(RefactoringAvailabilityTester.java:381)
	at org.eclipse.jdt.internal.corext.refactoring.RefactoringAvailabilityTester.isInferTypeArgumentsAvailable(RefactoringAvailabilityTester.java:408)
	at org.eclipse.jdt.ui.actions.InferTypeArgumentsAction.selectionChanged(InferTypeArgumentsAction.java:97)
	at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchSelectionChanged(SelectionDispatchAction.java:237)
	at org.eclipse.jdt.ui.actions.SelectionDispatchAction.selectionChanged(SelectionDispatchAction.java:232)
	at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:162)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
	at org.eclipse.core.runtime.Platform.run(Platform.java:785)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:148)
	at org.eclipse.jface.viewers.Viewer.fireSelectionChanged(Viewer.java:160)
	at org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:1784)
	at org.eclipse.jface.viewers.StructuredViewer.handleSelect(StructuredViewer.java:1027)
	at org.eclipse.jface.viewers.StructuredViewer$4.widgetSelected(StructuredViewer.java:1053)
	at org.eclipse.jface.util.OpenStrategy.fireSelectionEvent(OpenStrategy.java:210)
	at org.eclipse.jface.util.OpenStrategy.access$3(OpenStrategy.java:205)
	at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:365)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:914)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3285)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2905)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1762)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1726)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:397)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
	at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:106)
	at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:109)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:379)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
	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:585)
	at org.eclipse.core.launcher.Main.invokeFramework(Main.java:338)
	at org.eclipse.core.launcher.Main.basicRun(Main.java:282)
	at org.eclipse.core.launcher.Main.run(Main.java:977)
	at org.eclipse.core.launcher.Main.main(Main.java:952)
Comment 1 Martin Aeschlimann CLA 2006-01-04 08:55:31 EST
I filed bug 122619 for the exception log (different issue).
The problem is that when Eclipse starts up and can't find a project because it was deleted while Eclipse was closed it shows the project as a closed IProject.

Problem is JavaWorkingSetUpdater.checkElementExistence
 remove= (project != null ? project.isOpen() : true) && !jElement.exists();

Project is not open so it will not be removed. Why is this checked? Isn't 'not exists' enough reason to remove it?

Note, project can't be null here.
Comment 2 Dirk Baeumer CLA 2006-01-05 04:40:35 EST
The check is so "complicated" to avoid that elements below a project in a working set get removed when the project is closed (in this case they don't exist anymore).
Comment 3 Dirk Baeumer CLA 2006-01-05 04:55:30 EST
Fixed in build >= I20060110.
Comment 4 Martin Aeschlimann CLA 2006-08-03 09:42:35 EDT
*** Bug 101475 has been marked as a duplicate of this bug. ***