hc-httpclient-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Natarajan_Va...@emc.com
Subject RE: stream corruption
Date Wed, 21 Jan 2009 19:59:53 GMT
Yes all defaults.

Code snippet

        m_multiThreadedHttpConnectionManager = new
MultiThreadedHttpConnectionManager();
        m_client = new HttpClient(m_multiThreadedHttpConnectionManager);


        PostMethod post = new PostMethod(url);
        try {
            post.setRequestEntity(new
InputStreamRequestEntity(serializeObject(request)));

            NameValuePair[] pair = new NameValuePair[1];
            pair[0] = new NameValuePair(name, value);
            post.setQueryString(pair);
            m_client.executeMethod(post);

            if (post.getStatusCode() == 200) {
                    ObjectInputStream responseStream = new
ObjectInputStream(post.getResponseBodyAsStream());
                    return responseStream.readObject();
            }


-----Original Message-----
From: raykroeker@gmail.com [mailto:raykroeker@gmail.com] On Behalf Of
Raymond Kroeker
Sent: Wednesday, January 21, 2009 11:53 AM
To: HttpClient User Discussion
Subject: Re: stream corruption

What about any retry params.  I'm guessing you're using the defaults
there too?

On Wed, Jan 21, 2009 at 10:44,  <Natarajan_Valli@emc.com> wrote:
> we use standard ones (no customization)
>
> org.apache.commons.httpclient.methods.PostMethod
> org.apache.commons.httpclient.methods.InputStreamRequestEntity (we
> buffer the serialized java object and pass ByteArrayInputStream to
> InputStreamRequestEntity).
>
> As recommended we re-use HttpClient object and create PostMethod
object
> every time by passing url. Also use default params and its values.
>
> Thanks
> Valli
>
> -----Original Message-----
> From: raykroeker@gmail.com [mailto:raykroeker@gmail.com] On Behalf Of
> Raymond Kroeker
> Sent: Wednesday, January 21, 2009 10:32 AM
> To: HttpClient User Discussion
> Subject: Re: stream corruption
>
> What about the http methods themselves.  Are you using the vanilla
> versions that come with http client; are you extending them in any
> way; are you using a request entity for either post/put?
>
> Raymond
>
> On Wed, Jan 21, 2009 at 10:20,  <Natarajan_Valli@emc.com> wrote:
>> Raymond,
>>
>> Thanks for reply.
>>
>> 1. Yes & no. The problem re-occurs but things work fine when we
resend
>> failed request. So, there is no testcase or data that reproduce the
>> problem as needed.
>> 2. I tried to buffer & dump content on server side before calling
>> ObjectInputStream and readObject in order to see content of malformed
>> stream. Unfortunately, the problem did not occur or at least the
> problem
>> is delayed for hours...
>>
>> Additional information is, we use MultiThreadedHttpConnectionManager
> on
>> client side.
>>
>> Thanks
>> Valli
>>
>> -----Original Message-----
>> From: raykroeker@gmail.com [mailto:raykroeker@gmail.com] On Behalf Of
>> Raymond Kroeker
>> Sent: Wednesday, January 21, 2009 10:07 AM
>> To: HttpClient User Discussion
>> Subject: Re: stream corruption
>>
>> Hi Natarajan,
>>    I've been using hc 3.0.1 for a long while and have never noticed
>> this issue.  I have a couple of questions.
>>
>> 1.  Can you reproduce the event that causes the error?
>> 2.  Can you see what the content of the malformed stream is?
>>
>>    If neither of these is true I would suggest that you persist the
>> request content such that when the error occurs you can troubleshoot
>> the problem and ask better questions.
>>
>> Raymond
>>
>> On Wed, Jan 21, 2009 at 09:02,  <Natarajan_Valli@emc.com> wrote:
>>> We use HttpClient version 3.0.1 and recently noticed stream
>> corruption.
>>> The corruption is noticed on server side when the server (webapp
>> running
>>> in Jboss server) receives those requests. We believe that at some
>> point
>>> content of 2 requests are mixed. Is that possible? The problem is
> very
>>> intermittent but happens very often.
>>>
>>>
>>>
>>> Here is the code snippet that receives the stream on server side
>>>
>>>
>>>
>>>                    ObjectInputStream reqStream = new
>>> ObjectInputStream(httpServletReq.getInputStream());
>>>
>>>                    return (IRequest) reqStream.readObject();
>>>
>>>
>>>
>>>
>>>
>>> exception returned by this when problem occurs
>>>
>>>
>>>
>>> java.lang.NullPointerException
>>>
>>>                at
>>>
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1820)
>>>
>>>                at
>>>
>>
>
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719
>>> )
>>>
>>>                at
>>> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
>>>
>>>                at
>>>
>>
>
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1908)
>>>
>>>                at
>>>
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1832)
>>>
>>>                at
>>>
>>
>
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719
>>> )
>>>
>>>                at
>>> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
>>>
>>>                at
>>> java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
>>>
>>>
>>>
>>> Any idea to resolve this problem is highly appreciated!
>>>
>>>
>>>
>>> Thanks
>>>
>>> Valli
>>>
>>>
>>>
>>>
>>
>>
>>
>> --
>> ---------------------------------------------------------
>> Raymond Kroeker
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>
>>
>
>
>
> --
> ---------------------------------------------------------
> Raymond Kroeker
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>



-- 
---------------------------------------------------------
Raymond Kroeker

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org


Mime
View raw message