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

Bug 349937

Summary: after svn update, "Web App Library" missing
Product: [WebTools] WTP Java EE Tools Reporter: arne anka <eclipse-bugs>
Component: jst.j2eeAssignee: Rob Stryker <stryker>
Status: RESOLVED WORKSFORME QA Contact: Chuck Bridgham <cbridgha>
Severity: normal    
Priority: P3 CC: ccc, thatnitind
Version: 3.2.3   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Attachments:
Description Flags
screenshot of blocking and non-progressing dialog none

Description arne anka CLA 2011-06-21 08:00:43 EDT
Build Identifier: 

it's not a really good subject :-)
in my project, below WEB-INF/lib/ lives a lib 
Foo_4.4.2.76.jar
this lib is added _automatically_ to the class path by eclipse/wtp.
after a recent project upgrade from svn, the librray switched version, now named
Foo_4.4.3.78.jar
nothing new, other libs have changed, too in the past.

but now eclipse claims the lib Foo_4.4.2.76.jar to be missing from the class path and fails to update the information to the recently updated version -- although the library was added automatically by eclipse/wtp just because it lives in WEB-INF/lib/!

from the problems view i attempted a quick fix, but now i am stuck with non-progressing dialog (see attached screenshot).

in .metadata/.log there's a stcktrace, repeated 3 or 4 times:

!ENTRY org.eclipse.jdt.ui 4 10001 2011-06-21 13:32:01.519
!MESSAGE Internal Error
!STACK 1
Java Model Exception: Java Model Status [/.org.eclipse.jdt.core.external.folders/.link4/Foo_4.4.3.78.jar [in MyWebapp] is not on its project's build path]
	at org.eclipse.jdt.internal.core.PackageFragmentRoot.getRawClasspathEntry(PackageFragmentRoot.java:553)
	at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.getSelectedPackageFragmentRoot(LibrariesWorkbookPage.java:369)
	at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.updateEnabledState(LibrariesWorkbookPage.java:602)
	at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.libaryPageSelectionChanged(LibrariesWorkbookPage.java:595)
	at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.access$1(LibrariesWorkbookPage.java:594)
	at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage$LibrariesAdapter.selectionChanged(LibrariesWorkbookPage.java:202)
	at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.doListSelected(TreeListDialogField.java:897)
	at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField$TreeViewerAdapter.selectionChanged(TreeListDialogField.java:882)
	at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:162)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
	at org.eclipse.jface.viewers.Viewer.fireSelectionChanged(Viewer.java:160)
	at org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:2162)
	at org.eclipse.jface.viewers.StructuredViewer.handleSelect(StructuredViewer.java:1190)
	at org.eclipse.jface.viewers.StructuredViewer$4.widgetSelected(StructuredViewer.java:1220)
	at org.eclipse.jface.util.OpenStrategy.fireSelectionEvent(OpenStrategy.java:228)
	at org.eclipse.jface.util.OpenStrategy.access$4(OpenStrategy.java:222)
	at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:389)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3540)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3161)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
	at org.eclipse.jface.window.Window.open(Window.java:801)
	at org.eclipse.jdt.internal.ui.wizards.buildpaths.UserLibraryMarkerResolutionGenerator$OpenBuildPathMarkerResolution.run(UserLibraryMarkerResolutionGenerator.java:259)
	at org.eclipse.ui.internal.views.markers.QuickFixPage$12.run(QuickFixPage.java:596)
	at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
	at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:1008)
	at org.eclipse.ui.internal.views.markers.QuickFixPage.performFinish(QuickFixPage.java:576)
	at org.eclipse.ui.internal.views.markers.QuickFixWizard$1.run(QuickFixWizard.java:96)
	at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
	at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:1008)
	at org.eclipse.ui.internal.views.markers.QuickFixWizard.performFinish(QuickFixWizard.java:105)
	at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:811)
	at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:430)
	at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:624)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:234)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3540)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3161)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
	at org.eclipse.jface.window.Window.open(Window.java:801)
	at org.eclipse.ui.internal.views.markers.QuickFixHandler.execute(QuickFixHandler.java:156)
	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:293)
	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
	at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
	at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241)
	at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241)
	at org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(CommandContributionItem.java:820)
	at org.eclipse.ui.menus.CommandContributionItem.access$19(CommandContributionItem.java:806)
	at org.eclipse.ui.menus.CommandContributionItem$5.handleEvent(CommandContributionItem.java:796)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3540)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3161)
	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:620)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1384)
!SUBENTRY 1 org.eclipse.jdt.core 4 1006 2011-06-21 13:32:01.520
!MESSAGE /.org.eclipse.jdt.core.external.folders/.link4/Foo_4.4.3.78.jar [in MyWebapp] is not on its project's build path


Reproducible: Didn't try
Comment 1 arne anka CLA 2011-06-21 08:01:49 EDT
Created attachment 198326 [details]
screenshot of blocking and non-progressing dialog
Comment 2 arne anka CLA 2011-06-21 08:02:32 EDT
eclipse is latest 3.6.x with the most recent updates. cannot copy build id, since eclipse is blocked by the quick fix dialog ...
Comment 3 Nitin Dahyabhai CLA 2011-06-21 16:45:23 EDT
This update from svn, was it done from inside Eclipse?  If not, does Refreshing the project's contents from the File menu make a difference?
Comment 4 Carl Anderson CLA 2011-06-22 23:25:40 EDT
I am assigning this to Rob for initial investigation, however, everything about this appears to be a JDT problem.  It appears to be their warning, and their quick fix.

If there is something about this that can be easily fixed/updated, it should be done via the Deployment Assembly properties page on the Web project.