Project: JDT
Bug 367629 [hovering] JavaDoc-Navigation broken if there are spaces in the URL
Reported: 2011-12-29 10:19:06 | Status: verified fixed

If the JavaDoc location e.g. on the local file system has spaces in it navigating to internal links is broken. Not sure if this once more a problem of the browser control which should have escaped such spaces with "%20" or this is the task of the handler. Here's the relevant stacktrace: !ENTRY org.eclipse.jdt.ui 4 10001 2011-12-29 15:56:37.740 !MESSAGE Internal Error !STACK 0 java.net.URISyntaxException: Illegal character in path at index 17: file://C:/Program Files (x86)/Oracle/JavaFX 2.0 SDK/docs/api/javafx/scene/layout/Region.html at java.net.URI$Parser.fail(URI.java:2809) at java.net.URI$Parser.checkChars(URI.java:2982) at java.net.URI$Parser.parseHierarchical(URI.java:3066) at java.net.URI$Parser.parse(URI.java:3014) at java.net.URI.<init>(URI.java:578) at org.eclipse.jdt.internal.ui.viewsupport.JavaElementLinks$1.changing(JavaElementLinks.java:222) at org.eclipse.swt.browser.IE$7.handleEvent(IE.java:499) at org.eclipse.swt.ole.win32.OleEventTable.sendEvent(OleEventTable.java:55) at org.eclipse.swt.ole.win32.OleEventSink.notifyListener(OleEventSink.java:145) at org.eclipse.swt.ole.win32.OleEventSink.Invoke(OleEventSink.java:120) at org.eclipse.swt.ole.win32.OleEventSink.access$1(OleEventSink.java:97) at org.eclipse.swt.ole.win32.OleEventSink$1.method6(OleEventSink.java:71) at org.eclipse.swt.internal.ole.win32.COMObject.callback6(COMObject.java:119) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2545) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3752) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:977) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:893) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:91) at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:565) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:520) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124) 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:352) 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:624) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:579) at org.eclipse.equinox.launcher.Main.run(Main.java:1433) at org.eclipse.equinox.launcher.Main.main(Main.java:1409)

Files changed in fix:
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/viewsupport/JavaElementLinks.java