Borrar filtros
Borrar filtros

Problem with HttpUrlConnection after migration to Windows 7 from MATLAB R2010+

2 visualizaciones (últimos 30 días)
I recently upgraded from Windows XP to Windows 7, and software I was using to read data from web sites doesn't work now. I'm using something like:
>> site_or_html_filename=java.lang.String('http://www.google.com');
>> my_url = java.net.URL(site_or_html_filename);
>> connection = my_url.openConnection();
>> connection.setConnectTimeout(0);
>> connection.setDoOutput(true);
>> in = connection.getInputStream();
??? Java exception occurred: java.net.ConnectException: Connection timed out: connect
Note that I'm calling a Java class that does the above, and the class includes a trust manager that does not validate certificate chains. This worked fine in Windows XP, but I can't get it to work in Windows 7. I've disabled the firewall, so I don't think that's the issue. I've also tried setting System properties proxySet,proxyPort and proxyHost to no avail. Can anybody help?

Respuesta aceptada

Deborah
Deborah el 30 de Sept. de 2011
It turns out that what MATLAB is returning for the connection is ice.net.HttpURLConnection, which doesn't complete the connection, while sun.net.www.protocol.http.HttpURLConnection will. Adding the following fixed the Connect timeout problem:
% This version is needed on Windows 7 handler = sun.net.www.protocol.http.Handler;
my_url = java.net.URL([],site_name,handler);
% This version works on Windows XP, but won't work on Windows 7
% my_url=java.net.URL(site_name);

Más respuestas (2)

Deborah
Deborah el 26 de Sept. de 2011
I forgot to mention, I already tried running matlab in Windows XP compatibility mode - that didn't help. The software also works fine when I run the Java class from cygwin. It's only when I run from MATLAB that I see this problem.

Jason Ross
Jason Ross el 26 de Sept. de 2011
Are you running with UAC (User Access Control) enabled or disabled?
You could try either turning it off in the Control Panel, or running MATLAB as Administrator by right-clicking on matlab.exe and selecting "Run as Administrator".

Categorías

Más información sobre Java Package Integration en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by