Wow, I forgot just how far we got with this.
Let me refresh myself with this work and I'll get to the list shortly.
-Chris.
On 25/10/2012 16:14, Vasiliy Baranov wrote:
Hi Damjan,
This looks like exactly what I need. Thank you for sharing!
Now perhaps the question is whether this feature can be or already is
included in the JDK or I am on my own to hack something together based
on this patch.
Thank you,
-- Vasiliy
On 25.10.2012 18:29, Damjan Jovanovic wrote:
Guys, there was a patch for this feature (use of HTTP proxies with
CONNECT request in java.net.Socket) floating around in February/March
2010, the latest version of which is at
http://mail.openjdk.java.net/pipermail/net-dev/2010-March/001642.html
I helped write it so let me know if you need any help.
Regards
Damjan
On Thu, Oct 25, 2012 at 3:53 PM, Michael McMahon
<michael.x.mcma...@oracle.com> wrote:
There is a JSR for websockets, and they are doing a reference
implementation
based on JDK 7 I believe.
As regards TCP sockets via Http proxies, JDK doesn't support that.
The closest thing is probably SOCKS. Can you use that?
- Michael
On 25/10/12 14:32, Vasiliy Baranov wrote:
Greetings,
And apologies if I am sending this to the wrong list...
Suppose I want my code to talk to a TCP server via an HTTP proxy, by
setting up a proxy tunnel using the CONNECT method. By any chance,
is there
a mechanism in the Java SE networking stack that would allow me to
do so? A
mechanism that would handle proxy selection, tunneling, and, most
importantly, authentication identically to HttpURLconnection?
If there is no such mechanism in JDK 7, could such a mechanism be
added in
JDK 8?
FWIW, proxy selection and tunneling through non-authenticating proxy is
not too difficult to implement with ProxySelector and plain Sockets,
using
sun.net.www.protocol.http.HttpURLConnection.plainConnect as a
reference. My
code does so already.
Proxy authentication, however, is a totally different story. If I parse
JDK code correctly, client code that does not use HttpURLConnection is
unlikely to be able to integrate nicely with the AuthCacheValue
cache or
handle complex authentication schemes, unless it chooses to depend
on some
JDK-internal APIs and duplicate great amount of JDK code. My code
probably
cannot afford the latter two, that is why I am asking for help here
on this
list. Since I have proxy selection and non-authenticated tunneling
already
implemented, in my case it would actually be sufficient to only have
some
JDK support for proper integration with the AuthCacheValue cache and
the
standard authentication schemes. However, I gather a more universal
HTTP
tunneling facility, something that works like HttpURLConnection but
skips
the final HTTP handshake with the end server, is likely to be a cleaner
solution.
If it matters, I am asking this in the context of adding support for
WebSockets to JavaFX WebView:
http://javafx-jira.kenai.com/browse/RT-14947
Thank you in advance,
-- Vasiliy