This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 75053 - Support proxies which require authentication
Summary: Support proxies which require authentication
Status: RESOLVED FIXED
Alias: None
Product: platform
Classification: Unclassified
Component: Autoupdate (show other bugs)
Version: 5.x
Hardware: All All
: P3 blocker with 1 vote (vote)
Assignee: Jiri Rechtacek
URL: http://java.sun.com/j2se/1.5.0/docs/g...
Keywords:
: 73362 (view as bug list)
Depends on: 75856
Blocks:
  Show dependency tree
 
Reported: 2006-04-14 11:37 UTC by Jiri Rechtacek
Modified: 2007-01-10 13:30 UTC (History)
4 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jiri Rechtacek 2006-04-14 11:37:56 UTC
Autoupdate should be able to communicate throught a company proxy requires
user authentication.

Quote from a mailing list:
"Lukas Jungmann wrote:
> Maybe starting IDE with -J-Dhttp.proxyUser=user 
> -J-Dhttp.proxyPassword=pwd will help in this case, but I didn't try it. 
> See eg. http://www.javaworld.com/javaworld/javatips/jw-javatip42.html 
> for reference."
Comment 1 _ ttran 2006-04-14 11:48:23 UTC
Note, this is not only autoupdate, but also the new Start page which reads RSS
feed and CVS which needs to tunnel through http proxy.  The web service support
also needs to retrieve WSDL via http too.  There are more use cases.

If you can to implementing something, please let me know
Comment 2 _ rkubacki 2006-04-14 12:05:19 UTC
somewhat related is issue #13702 about ability to set list of nonProxyHosts.
Comment 3 Lukas Jungmann 2006-04-14 12:50:44 UTC
If IDE will run only on JDK > 1.4 (I think that this was already decided) then
we could consider IDE-wide implementation of java.net.ProxySelector (new in JDK
1.5). This way we should be able to simply handle connections through different
proxies - at least programatically - by using standard java API in other modules
(eg. autoupdate, vcs, websvc, dbexplorer,...) and using different protocols
(HTTP, HTTPS, SOCKS, maybe FTP(?)).

In webservices area there's required also proxy for https protocol (current
implementation uses for HTTPS proxy the same value as is set for HTTP proxy -
not ideal solution, but covers most use-cases) - there are webservices which are
accesible only using HTTPS protocol (they're using Transport Level Security) and
we should support them too.

I just wanted to remind you to NOT forget to think about handling HTTPS protocol
too.
Comment 4 Jiri Rechtacek 2006-06-09 16:52:31 UTC
*** Issue 73362 has been marked as a duplicate of this issue. ***
Comment 5 Jiri Rechtacek 2006-08-10 12:26:09 UTC
After my wide playing with proxy server which requires an user authentication I
can tell that it works for me. The class core/NbAuthenticator handles this
cases, displays dialog which asks for an user name/password and propagate back
to JDK to make a connection.
Usage of ProxySelector seems useful to get more monitoring and logging on
NetBeans side but it's not needed to support this kind of proxies.
So, I don't see it as an defect. The original initiator of this problem have
admitted to me that it worked for him.
Comment 6 rittmey 2006-11-02 15:44:59 UTC
Still doesn't work. I downloaded NB 5.5 and still cannot use proxy
authentication with NB. So no updates, no news on the welcome page and no blogs
either. Updates and module management are hampered most of course.

It doesn't work for me (proxy used in our network is Squid 2.5).

Log message:

Annotation: URL:
http://www.netbeans.org/updates/hotfixes/55_1.20_.xml?unique=NB777314664
java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.Socket.connect(Socket.java:507)
at java.net.Socket.connect(Socket.java:457)
at sun.net.NetworkClient.doConnect(NetworkClient.java:157)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:365)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:477)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:214)
at sun.net.www.http.HttpClient.New(HttpClient.java:287)
at
sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:799)
at
sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:758)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:669)
at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:913)
at
com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:973)
at
com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(XMLVersionDetector.java:184)
at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:798)
at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:250)
at
com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
at org.netbeans.updater.XMLUtil.parse(XMLUtil.java:79)
at org.netbeans.modules.autoupdate.XMLUpdates.parseDocumentImpl(XMLUpdates.java:404)
[catch] at
org.netbeans.modules.autoupdate.XMLUpdates.parseDocument(XMLUpdates.java:355)
at org.netbeans.modules.autoupdate.XMLUpdates.access$500(XMLUpdates.java:48)
at org.netbeans.modules.autoupdate.XMLUpdates$2.run(XMLUpdates.java:208)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:499)
at org.openide.util.RequestProcessor$Processor.doEvaluate(RequestProcessor.java:977)
at org.openide.util.RequestProcessor$Task.waitFinished(RequestProcessor.java:669)
at org.netbeans.modules.autoupdate.XMLUpdates.checkUpdates(XMLUpdates.java:245)
at org.netbeans.modules.autoupdate.AutoChecker.runInner(AutoChecker.java:125)
at org.netbeans.modules.autoupdate.AutoChecker$1.run(AutoChecker.java:106)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:499)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:932)
Comment 7 Jiri Rechtacek 2006-11-02 16:35:28 UTC
It's weird. I'm using Squid proxy as well and it worksforme with NB5.5 [Squid
Cache: Version 2.5.STABLE12, NB5.5 FCS]
Maybe a timeout limitation could be a problem.
I assume you were asked by IDE for username/password. Were you?
Comment 8 rittmey 2006-11-02 18:52:48 UTC
That exactly is my problem. I never get asked. As to why, I have no idea. I
reopened the bug immediately after installing NB 5.5. So no changes to default
here - except it imported some configurations of NB 5.0 (which also never asked
for authentification information). JDK is SUNs JDK 1.5_06.
Comment 9 Jiri Rechtacek 2007-01-10 13:30:15 UTC
fixed in NB6.0/M6.

For more verbose output from running IDE then start w/ options:
-J-Dorg.netbeans.core.NbProxySelector.level=-1
-J-Dorg.netbeans.core.NbAuthenticator.level=-1

Checking in
editor/options/src/org/netbeans/modules/options/general/Bundle.properties;
/shared/data/ccvs/repository/editor/options/src/org/netbeans/modules/options/general/Bundle.properties,v
 <--  Bundle.properties
new revision: 1.14; previous revision: 1.13
done
Checking in
editor/options/src/org/netbeans/modules/options/general/AdvancedProxyPanel.java;
/shared/data/ccvs/repository/editor/options/src/org/netbeans/modules/options/general/AdvancedProxyPanel.java,v
 <--  AdvancedProxyPanel.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/options/src/org/netbeans/modules/options/general/GeneralOptionsPanel.form;
/shared/data/ccvs/repository/editor/options/src/org/netbeans/modules/options/general/GeneralOptionsPanel.form,v
 <--  GeneralOptionsPanel.form
new revision: 1.6; previous revision: 1.5
done
Checking in
editor/options/src/org/netbeans/modules/options/general/GeneralOptionsModel.java;
/shared/data/ccvs/repository/editor/options/src/org/netbeans/modules/options/general/GeneralOptionsModel.java,v
 <--  GeneralOptionsModel.java
new revision: 1.12; previous revision: 1.11
done
Checking in
editor/options/src/org/netbeans/modules/options/general/AdvancedProxyPanel.form;
/shared/data/ccvs/repository/editor/options/src/org/netbeans/modules/options/general/AdvancedProxyPanel.form,v
 <--  AdvancedProxyPanel.form
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/options/src/org/netbeans/modules/options/general/GeneralOptionsPanel.java;
/shared/data/ccvs/repository/editor/options/src/org/netbeans/modules/options/general/GeneralOptionsPanel.java,v
 <--  GeneralOptionsPanel.java
new revision: 1.29; previous revision: 1.28
done
Checking in core/src/org/netbeans/core/NbAuthenticator.java;
/shared/data/ccvs/repository/core/src/org/netbeans/core/NbAuthenticator.java,v 
<--  NbAuthenticator.java
new revision: 1.21; previous revision: 1.20
done