John,

HttpClient's entity enclosing methods (POST, PUT) do support content streaming when 
(1) the content length does not need to be automatically calculated or (2) 
chunk-encoding is used

Please refer to the following sample applications for details

Unbuffered post:

http://cvs.apache.org/viewcvs.cgi/*checkout*/jakarta-commons/httpclient/src/examples/UnbufferedPost.java?content-type=text%2Fplain&rev=1.2.2.1

Chunk-encoded post:

http://cvs.apache.org/viewcvs.cgi/*checkout*/jakarta-commons/httpclient/src/examples/ChunkEncodedPost.java?content-type=text%2Fplain&rev=1.4.2.1

Hope this helps

Oleg


-----Original Message-----
From: John Keyes [mailto:[EMAIL PROTECTED]
Sent: Monday, February 23, 2004 13:54
To: [EMAIL PROTECTED]
Subject: streaming request body


Hi,

I notice you have separated out the functions of the connection and the
content creation. So the code must be something like

    HttpClient client = new HttpClient( url );
    HttpMethod method = new GetMethod();
    method.setRequestHeader( ... ); ...
    method.setRequestBody( ... );
    client.execute( method );

If I want to send a large attachment and I don't want it all to be in
memory then I can't do it.  The issue is that you have to write your
data to the HttpMethod. The HttpMethod doesn't know where to then write
this data until you call execute and pass the client which has the
connection to write to. So there isn't really a way around this because
of the separation of the connection from the HttpMethod.

So my question is, is there a way to stream the request body rather
than having to store the request in memory prior to writing it on the
wire.

Thanks,
-John K


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


***************************************************************************************************
The information in this email is confidential and may be legally privileged.  Access 
to this email by anyone other than the intended addressee is unauthorized.  If you are 
not the intended recipient of this message, any review, disclosure, copying, 
distribution, retention, or any action taken or omitted to be taken in reliance on it 
is prohibited and may be unlawful.  If you are not the intended recipient, please 
reply to or forward a copy of this message to the sender and delete the message, any 
attachments, and any copies thereof from your system.
***************************************************************************************************

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

Reply via email to