Ich möchte meine Anwendung in bestimmten Sekunden Timeout, aber es versucht weiterhin, die angegebene URL zu kontaktieren, bis es eine Antwort erhält. Unten ist der Code, den ich verwende.HttpURLConnection Timeout funktioniert nicht durch Festlegen der Systemeigenschaften
System.getProperties().setProperty("sun.net.client.defaultConnectTimeout", timeOut);
System.getProperties().setProperty("sun.net.client.defaultReadTimeout", timeOut);
URL url = new URL(targetURL);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
aber wenn ich folgende Eigenschaft
connection.setConnectTimeout(Integer.parseInt(timeout));
dann wird es in gewünschter Zeit abgelaufen, ohne die Antwort des Servers zu warten.
Warum wird die Zeit nicht überschritten, wenn nur die Systemeigenschaften verwendet werden?
Bearbeiten: Hat es etwas damit zu tun behavior/bug? Oder gibt es irgendeine Beziehung zur Java-Version, weil der gleiche Code für Java 1.4 verwendet wird, aber jetzt verwende ich Java 1.7.
@ brso05 Können Sie etwas vorschlagen? – Steve