我们有下一个代码。
有时我们应该在最后一行等待10-20-40秒。
可能是什么问题?有时HttpURLConnection.getInputStream执行太慢
的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();
更新:
接下来的代码解决了这个问题在Eclipse中。
但它仍然无法通过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")
是问题的根源。
为什么openConnection被调用两次? – 2009-12-17 10:25:36
这只是误印。 更正。 – 2009-12-17 10:32:30