У нас есть следующий код.
Иногда нам нужно подождать 10-20-40 секунд на последней строке.
В чем может быть проблема?
Java 1.4
URL url = ...;
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setUseCaches(false);
conn.connect();
OutputStream out = conn.getOutputStream();
ObjectOutputStream outStream = new ObjectOutputStream(out);
try
{
outStream.writeObject(objArray);
}
finally
{
outStream.close();
}
InputStream input = conn.getInputStream();
ОБНОВЛЕНИЕ:
Следующий код решает проблему ЗАТМЕНИЕМ.
Но он все еще не работает через Java WebStart: (
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setUseCaches(false);
System.setProperty("http.keepAlive", "false"); //<---------------
conn.connect();
Но почему?
ОБНОВЛЕНО еще раз!
Ошибка была исправлена! :)
Мы работали со связями не в одном классе, а в двух.
И во втором классе есть следующая строка:
URL url = ...
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestProperty("Content-Length", "1000"); //<------------
conn.connect();
Примечание:
setRequestProperty("Content-Length", "1000")
является основной причиной проблемы.