Bug 247845 - [misc] Errors in log from fetching Javadoc when working disconnected
Summary: [misc] Errors in log from fetching Javadoc when working disconnected
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.5   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.5 M3   Edit
Assignee: Olivier Thomann CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 400060
  Show dependency tree
 
Reported: 2008-09-18 12:03 EDT by John Arthorne CLA
Modified: 2013-02-06 03:24 EST (History)
3 users (show)

See Also:


Attachments
Proposed fix (1.27 KB, patch)
2008-09-23 09:35 EDT, Olivier Thomann CLA
no flags Details | Diff
Proposed fix (1.61 KB, patch)
2008-10-28 12:37 EDT, Olivier Thomann CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description John Arthorne CLA 2008-09-18 12:03:47 EDT
Build: I20080917

I was working disconnected this morning, and noticed several of the follow error in my log file. Since being disconnected from the network is a fairly normal occurrence I wouldn't expect an error to be logged here:

Java Model Exception: Java Model Status [Cannot retrieve the attached javadoc for Comparable [in Comparable.class [in java.lang [in C:\vm\ibm5sr4\jre\lib\core.jar]]]java.net.NoRouteToHostException: No route to host: connect
	at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:372)
	at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:233)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:220)
	at java.net.Socket.connect(Socket.java:541)
	at java.net.Socket.connect(Socket.java:491)
	at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:397)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:507)
	at sun.net.www.http.HttpClient.<init>(HttpClient.java:245)
	at sun.net.www.http.HttpClient.New(HttpClient.java:319)
	at sun.net.www.http.HttpClient.New(HttpClient.java:331)
	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:822)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:774)
	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:699)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:943)
	at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:751)
	at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1059)
	at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:558)
	at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:462)
	at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:442)
	at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:96)
	at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:76)
	at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:59)
	at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:513)
	at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Comment 1 Dani Megert CLA 2008-09-18 12:14:23 EDT
John, this happens when fetching Javadoc from the net. Your editing experience when offline (but regarding speed also when online) would be better if you attached the source or at least had the Javadoc locally.

Olivier, I'm no longer 100% sure whether JDT Core already suppresses certain kinds of I/O exceptions. Could you check? If not, I think it is fair to no log the NoRouteToHostException.
Comment 2 Dani Megert CLA 2008-09-23 03:30:50 EDT
Olivier can you please answer my question from comment 1. Thanks.
Comment 3 Olivier Thomann CLA 2008-09-23 09:19:40 EDT
(In reply to comment #1)
> Olivier, I'm no longer 100% sure whether JDT Core already suppresses certain
> kinds of I/O exceptions. Could you check? If not, I think it is fair to no log
> the NoRouteToHostException.
Yes, we don't log FileNotFoundException. So I could also not log NoRouteToHostException as well.

Comment 4 Dani Megert CLA 2008-09-23 09:23:41 EDT
Sounds good. Can I move the bug to you then?
Comment 5 Olivier Thomann CLA 2008-09-23 09:33:19 EDT
Sure. The fix should be applied inside the org.eclipse.jdt.internal.core.JavaElement.getURLContents() call.
Comment 6 Olivier Thomann CLA 2008-09-23 09:35:09 EDT
Created attachment 113247 [details]
Proposed fix
Comment 7 Olivier Thomann CLA 2008-09-23 09:53:33 EDT
Released for 3.5M3 in HEAD.
John, please verify that this doesn't occur anymore using a build > 0923.

Verifier, in order to verify, the machine must be disconnected.
Comment 8 Frederic Fusier CLA 2008-10-28 10:23:43 EDT
When disconnected, using I20081026-2000, I still get an exception:

!SUBENTRY 1 org.eclipse.jdt.core 4 1008 2008-10-28 14:00:06.578
!MESSAGE Cannot retrieve the attached javadoc for String {key=Ljava/lang/String;} [in String.class [in java.lang [in C:\JDKs\sun\6.0\jre\lib\rt.jar]]]java.net.UnknownHostException: java.sun.com
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:177)
        at java.net.Socket.connect(Socket.java:519)
        at java.net.Socket.connect(Socket.java:469)
        at sun.net.NetworkClient.doConnect(NetworkClient.java:157)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:394)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:529)
        at sun.net.www.http.HttpClient.<init>(HttpClient.java:233)
        at sun.net.www.http.HttpClient.New(HttpClient.java:306)
        at sun.net.www.http.HttpClient.New(HttpClient.java:323)
        at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:788)
        at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:729)
        at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:654)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:977)
        at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:752)
        at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1080)
        at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:992)
        at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:462)
        at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:553)
        at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:510)
        at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:495)
        at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129)
        at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:82)
        at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166)
Comment 9 Olivier Thomann CLA 2008-10-28 12:37:11 EDT
Created attachment 116314 [details]
Proposed fix

New patch catches more exceptions.
Comment 10 Olivier Thomann CLA 2008-10-28 12:37:35 EDT
Released for 3.5M3.
Comment 11 David Audel CLA 2008-10-29 05:23:35 EDT
Verified for 3.5M3 using I20081028-2000 build.