Guillaume Cottenceau wrote:
If, for example, the HTTP server sends one "a" byte once per
second forever, HttpClient will never exit from executeMethod -
if I'm correct.

Yes. It's up to you to decide if that sort of communication makes sense. HTTP allows it however.



2. Open connections
You can set timeouts for idle connections, so you will get a timeout
exception after a while. If the connection is active (i.e. client is


Yes, but that's out of the scope of the described problem.

Sorry if I am missing the point!?


receiving data), your application should be able to figure out if it
is legitimate to stay open for such a long time and otherwise just
abort the method.


There's no such thing available in HttpClient, as far as I know?

What 'thing'? Abort? see HttpMethod#abort in 3.0

This needs a monitor Thread setting a timeout in our application.

You call try { client.execute(method) s = method.getResponseAsStream try { processStream(s) } catch(MyException) { method.abort(); } } finally { method.releaseConnection(); }

Inside your stream processing you are free to throw an exception.

It could make sense to implement this timeout in HttpClient, as
I've said in previous mail, however I am not sure it is "allowed"
by the HTTP protocol.

No it doesn't. HttpClient doesn't care what you send over the wire, and it does not care how fast you are doing this either, because HTTP does not specify that of course. Your problem is completely in the application domain and not in the protocol domain.



--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to