Bug in URLConnection?
Paulo Levi
i30817 at gmail.com
Tue Dec 1 16:56:08 PST 2009
Test case:
package util.net;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.Proxy;
import java.net.ProxySelector;
import java.net.SocketAddress;
import java.net.URI;
import java.net.URL;
import java.net.URLConnection;
import java.util.Collections;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
/**
*
* @author i30817
*/
public class ProxySelectorBugTest {
public ProxySelectorBugTest() {
}
@BeforeClass
public static void setUpClass() throws Exception {
}
@AfterClass
public static void tearDownClass() throws Exception {
}
@Before
public void setUp() {
}
@After
public void tearDown() {
}
/**
*
*/
@Test
public void testURLConnectionDoesntBypassProxySelector(){
ProxySelector proxySelector = ProxySelector.getDefault();
ProxySelector.setDefault(new UserProxySelector());
try {
//This calls the installed proxy selector.
URL u = new URL("http://www.yahoo.com");
URLConnection conn = u.openConnection();
conn.connect();
} catch (Exception ex) {
Logger.getLogger(ProxySelectorBugTest.class.getName()).log(Level.SEVERE,
null, ex);
}
ProxySelector.setDefault(proxySelector);
}
class UserProxySelector extends ProxySelector{
@Override
public void connectFailed(URI uri, SocketAddress sa, IOException ioe) {
}
@Override
public List<Proxy> select(URI uri) {
try {
//bug here, the java doc say that this will bypass the installed
//proxyselector but it doesn't.
URL u = new URL("http://www.google.com");
URLConnection conn = u.openConnection(Proxy.NO_PROXY);
conn.connect();
} catch (Exception ex) {
Logger.getLogger(UserProxySelector.class.getName()).log(Level.SEVERE,
null, ex);
}
return Collections.singletonList(Proxy.NO_PROXY);
}
}
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/net-dev/attachments/20091202/65d68ae9/attachment.html
More information about the net-dev
mailing list