Bug 15503 JavaModelException in log
everytime you move a cu this is dumped in .log this JavaElementImageProvider guy should call exists() before he asks for flags !STACK Java Model Exception: Java Model Status [Test.java does not exist.] at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException (JavaElement.java:478) at org.eclipse.jdt.internal.core.Openable.getUnderlyingResource (Openable.java:237) at org.eclipse.jdt.internal.core.CompilationUnit.getCorrespondingResource (CompilationUnit.java:395) at org.eclipse.jdt.internal.core.Openable.openWhenClosed (Openable.java:380) at org.eclipse.jdt.internal.core.JavaElement.openHierarchy (JavaElement.java:505) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo (JavaElement.java:288) at org.eclipse.jdt.internal.core.Member.getFlags(Member.java:140) at org.eclipse.jdt.internal.ui.viewsupport.JavaElementImageProvider.getBaseImageDes criptor(JavaElementImageProvider.java:183) at org.eclipse.jdt.internal.ui.viewsupport.JavaElementImageProvider.getJavaImageDes criptor(JavaElementImageProvider.java:117) at org.eclipse.jdt.internal.ui.viewsupport.JavaElementImageProvider.getImageLabel (JavaElementImageProvider.java:89) at org.eclipse.jdt.internal.ui.viewsupport.JavaUILabelProvider.getImage (JavaUILabelProvider.java:104) at org.eclipse.jface.viewers.DecoratingLabelProvider.getImage (DecoratingLabelProvider.java:67) at org.eclipse.jdt.internal.ui.viewsupport.ResourceToItemMapper.updateItem (ResourceToItemMapper.java:65) at org.eclipse.jdt.internal.ui.viewsupport.ResourceToItemMapper.resourceChanged (ResourceToItemMapper.java:54) at org.eclipse.jdt.internal.ui.viewsupport.ProblemTreeViewer.handleLabelProviderCha nged(ProblemTreeViewer.java:103) at org.eclipse.jface.viewers.ContentViewer$1.labelProviderChanged (ContentViewer.java:70) at org.eclipse.jdt.ui.ProblemsLabelDecorator.fireProblemsChanged (ProblemsLabelDecorator.java:270) at org.eclipse.jdt.ui.ProblemsLabelDecorator.access$0 (ProblemsLabelDecorator.java:265) at org.eclipse.jdt.ui.ProblemsLabelDecorator$1.problemsChanged (ProblemsLabelDecorator.java:245) at org.eclipse.jdt.internal.ui.viewsupport.ProblemMarkerManager$1.run (ProblemMarkerManager.java:151) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:29) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages (Synchronizer.java:93) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:1389) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1211) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:883) at org.eclipse.ui.internal.Workbench.run(Workbench.java:866) at org.eclipse.core.internal.boot.InternalBootLoader.run (InternalBootLoader.java:733) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:319) at EclipseRuntimeLauncher.main(EclipseRuntimeLauncher.java:16)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/viewsupport/JavaElementImageProvider.java
/**
	 * Returns an image descriptor for a java element. This is the base image, no overlays.
	 */
	public ImageDescriptor getBaseImageDescriptor(IJavaElement element, int renderFlags) {
		try {			
			switch (element.getElementType()) {
				
				case IJavaElement.INITIALIZER:
				case IJavaElement.METHOD:
				case IJavaElement.FIELD: {
					IMember member= (IMember) element;
					if (member.getDeclaringType().isInterface())
						return JavaPluginImages.DESC_MISC_PUBLIC;
					
					int flags= member.getFlags();
					if (Flags.isPublic(flags))
						return JavaPluginImages.DESC_MISC_PUBLIC;
					if (Flags.isProtected(flags))
						return JavaPluginImages.DESC_MISC_PROTECTED;
					if (Flags.isPrivate(flags))
						return JavaPluginImages.DESC_MISC_PRIVATE;
					
					return JavaPluginImages.DESC_MISC_DEFAULT;
				}
				case IJavaElement.PACKAGE_DECLARATION:
					return JavaPluginImages.DESC_OBJS_PACKDECL;
				
				case IJavaElement.IMPORT_DECLARATION:
					return JavaPluginImages.DESC_OBJS_IMPDECL;