On Wed, 2008-07-16 at 17:34 -0700, Uday Subbarayan wrote:
> Hi All,
>     I am having trouble in using HTTPClient 3.1 for PUT method w/ 
> "Expect:100-Continue" header. 
> 
> My requirement is that,
> [1] client sends a PUT request to the server with header only using this 
> Expect header and waits for the 100 response back from the server.
> [2] Then client sends the body, after it received the 100 status back from 
> the server.
> 
> The problem is that if my server sends back 100-continue, HttpClient 
> complaints about,
> "INFO: Discarding unexpected response: HTTP/1.1 100 Continue".
> 
> Here is sample code:
>           String testURL="http://localhost:8080/testci/index";;
>           HttpClient client = new HttpClient();
>           
>           PutMethod put = new PutMethod(url);
>           put.setUseExpectHeader(true);
>           int statusCode = client.executeMethod(put);
>           
>           
>           if(statusCode==100){
>               System.out.println("server response is 100!");
>               put.setRequestBody(new FileInputStream("test.txt"));
>           }
> ----------------------------
> 
> It looks like i am making some mistake.... Can some one shed some light here?
> 

Uday,

HTTP agents are not supposed to return 1xx status codes to the caller.
These are special purpose codes that are meant to be used internally
Just let HttpClient handle the expect-continue handshaking.  

http://hc.apache.org/httpclient-3.x/performance.html#Expect-continue_handshake

You can see exactly what gets transferred across the wire by turning on
the wire logging on the client side.

http://hc.apache.org/httpclient-3.x/logging.html

Hope this helps

Oleg


> Thanks,
> -Uday.
> 
> -------------------------
> 
> I do not blog but e-write:
> 
> http://uds-web.blogspot.com
> 
> 
>       


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

Reply via email to