You are viewing a plain text version of this content. The canonical link for it is here.
Posted to httpclient-users@hc.apache.org by Bhuvaneswari Anandhan <bh...@oracle.com> on 2015/05/26 13:42:01 UTC

Reg: HttpClient - POST with InputStreamEntity

Hi ,

 

In one of my project  we are migrating Apache http client libraries from  3.x to 4.4.1 version . 

 

Overview of my application :  This particular application(say XX) is a proxy. To access any of the client application(YY) it should go via proxy (configuration are in place).

 

Proxy application reads the http request generated by the container  and creates a new request to client application(YY) using Apache httpclient , after security validation it sets necessary details in the new request build and parses the http client response and sends it back to browser..

 

After migration, we are able to handle request with form data and multipart. 

 

Problem : For certain type of request, we read the request stream(from browser) and set it in apache httpclient request. 

 

For flex AMF request (request content type - "application/x-amf")  we read the stream from request and setting it in HTTP Post request as an InputStreamEntity. This particular request is in complete when it reaches the client application.

 

When the Flex application tries to deserialize the stream send in the request , its failing to read the data. The same was working fine for commons-httpclient3.3.

 

Application Server : Websphere 8 

 

Please help me out how I can pass this particular type request to client application using httpclient 4.4.1.

 

 

 

 

Thanks & Regards,

Bhuvaneswari

 

RE: Reg: HttpClient - POST with InputStreamEntity

Posted by Bhuvaneswari Anandhan <bh...@oracle.com>.
No buffering request in proxy. We are reading the entire stream from the request and setting in the apache client request.

I have already tried converting the request stream to byte array but that didn’t work. Also tried to convert stream and tried to set as StringEntity.


Thanks,
Bhuvaneswari

-----Original Message-----
From: Stefan Magnus Landrø [mailto:stefan.landro@gmail.com] 
Sent: Tuesday, May 26, 2015 6:00 PM
To: HttpClient User Discussion
Subject: Re: Reg: HttpClient - POST with InputStreamEntity

Are you performing ay buffering at all in your proxy? Just as an experiment
- what happens if you read the entire stream into a byte array and send that to your backend?

2015-05-26 13:58 GMT+02:00 Bhuvaneswari Anandhan <
bhuvaneswari.anandhan@oracle.com>:

> Thank you Stefan,
>
> We are not modifying the input stream generated by the container.
>
> Regarding your second question - Deserializing the input stream is 
> performed by Flex framework. It's trying to deserialize but it's not 
> even throwing any error. We strongly believe no issues with Flex 
> because the same is working in production with commons httpclient 3.1.
>
> Thanks,
> Bhuvaneswari
>
> -----Original Message-----
> From: Stefan Magnus Landrø [mailto:stefan.landro@gmail.com]
> Sent: Tuesday, May 26, 2015 5:23 PM
> To: HttpClient User Discussion
> Subject: Re: Reg: HttpClient - POST with InputStreamEntity
>
> Are you touching the input stream before passing it on? Have you 
> performed a wire capture to see what part of the stream gets lost?
> Stefan
>
> 2015-05-26 13:42 GMT+02:00 Bhuvaneswari Anandhan <
> bhuvaneswari.anandhan@oracle.com>:
>
> > Hi ,
> >
> >
> >
> > In one of my project  we are migrating Apache http client libraries 
> > from 3.x to 4.4.1 version .
> >
> >
> >
> > Overview of my application :  This particular application(say XX) is 
> > a proxy. To access any of the client application(YY) it should go 
> > via proxy (configuration are in place).
> >
> >
> >
> > Proxy application reads the http request generated by the container 
> > and creates a new request to client application(YY) using Apache 
> > httpclient , after security validation it sets necessary details in 
> > the new request build and parses the http client response and sends 
> > it
> back to browser..
> >
> >
> >
> > After migration, we are able to handle request with form data and 
> > multipart.
> >
> >
> >
> > Problem : For certain type of request, we read the request 
> > stream(from
> > browser) and set it in apache httpclient request.
> >
> >
> >
> > For flex AMF request (request content type - "application/x-amf")  
> > we read the stream from request and setting it in HTTP Post request 
> > as an InputStreamEntity. This particular request is in complete when 
> > it reaches the client application.
> >
> >
> >
> > When the Flex application tries to deserialize the stream send in 
> > the request , its failing to read the data. The same was working 
> > fine for commons-httpclient3.3.
> >
> >
> >
> > Application Server : Websphere 8
> >
> >
> >
> > Please help me out how I can pass this particular type request to 
> > client application using httpclient 4.4.1.
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > Thanks & Regards,
> >
> > Bhuvaneswari
> >
> >
> >
>
>
> --
> BEKK Open
> http://open.bekk.no
>
> TesTcl - a unit test framework for iRules http://testcl.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>


--
BEKK Open
http://open.bekk.no

TesTcl - a unit test framework for iRules http://testcl.com

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


RE: Reg: HttpClient - POST with InputStreamEntity

Posted by Bhuvaneswari Anandhan <bh...@oracle.com>.
No buffering request in proxy. We are reading the entire stream from the request and setting in the apache client request.

I have already tried converting the request stream to byte array but that didn’t work. Also tried to convert stream to String and tried to set as StringEntity.



-----Original Message-----
From: Stefan Magnus Landrø [mailto:stefan.landro@gmail.com] 
Sent: Tuesday, May 26, 2015 6:00 PM
To: HttpClient User Discussion
Subject: Re: Reg: HttpClient - POST with InputStreamEntity

Are you performing ay buffering at all in your proxy? Just as an experiment
- what happens if you read the entire stream into a byte array and send that to your backend?

2015-05-26 13:58 GMT+02:00 Bhuvaneswari Anandhan <
bhuvaneswari.anandhan@oracle.com>:

> Thank you Stefan,
>
> We are not modifying the input stream generated by the container.
>
> Regarding your second question - Deserializing the input stream is 
> performed by Flex framework. It's trying to deserialize but it's not 
> even throwing any error. We strongly believe no issues with Flex 
> because the same is working in production with commons httpclient 3.1.
>
> Thanks,
> Bhuvaneswari
>
> -----Original Message-----
> From: Stefan Magnus Landrø [mailto:stefan.landro@gmail.com]
> Sent: Tuesday, May 26, 2015 5:23 PM
> To: HttpClient User Discussion
> Subject: Re: Reg: HttpClient - POST with InputStreamEntity
>
> Are you touching the input stream before passing it on? Have you 
> performed a wire capture to see what part of the stream gets lost?
> Stefan
>
> 2015-05-26 13:42 GMT+02:00 Bhuvaneswari Anandhan <
> bhuvaneswari.anandhan@oracle.com>:
>
> > Hi ,
> >
> >
> >
> > In one of my project  we are migrating Apache http client libraries 
> > from 3.x to 4.4.1 version .
> >
> >
> >
> > Overview of my application :  This particular application(say XX) is 
> > a proxy. To access any of the client application(YY) it should go 
> > via proxy (configuration are in place).
> >
> >
> >
> > Proxy application reads the http request generated by the container 
> > and creates a new request to client application(YY) using Apache 
> > httpclient , after security validation it sets necessary details in 
> > the new request build and parses the http client response and sends 
> > it
> back to browser..
> >
> >
> >
> > After migration, we are able to handle request with form data and 
> > multipart.
> >
> >
> >
> > Problem : For certain type of request, we read the request 
> > stream(from
> > browser) and set it in apache httpclient request.
> >
> >
> >
> > For flex AMF request (request content type - "application/x-amf")  
> > we read the stream from request and setting it in HTTP Post request 
> > as an InputStreamEntity. This particular request is in complete when 
> > it reaches the client application.
> >
> >
> >
> > When the Flex application tries to deserialize the stream send in 
> > the request , its failing to read the data. The same was working 
> > fine for commons-httpclient3.3.
> >
> >
> >
> > Application Server : Websphere 8
> >
> >
> >
> > Please help me out how I can pass this particular type request to 
> > client application using httpclient 4.4.1.
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > Thanks & Regards,
> >
> > Bhuvaneswari
> >
> >
> >
>
>
> --
> BEKK Open
> http://open.bekk.no
>
> TesTcl - a unit test framework for iRules http://testcl.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>


--
BEKK Open
http://open.bekk.no

TesTcl - a unit test framework for iRules http://testcl.com

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


Re: Reg: HttpClient - POST with InputStreamEntity

Posted by Stefan Magnus Landrø <st...@gmail.com>.
Are you performing ay buffering at all in your proxy? Just as an experiment
- what happens if you read the entire stream into a byte array and send
that to your backend?

2015-05-26 13:58 GMT+02:00 Bhuvaneswari Anandhan <
bhuvaneswari.anandhan@oracle.com>:

> Thank you Stefan,
>
> We are not modifying the input stream generated by the container.
>
> Regarding your second question - Deserializing the input stream is
> performed by Flex framework. It's trying to deserialize but it's not even
> throwing any error. We strongly believe no issues with Flex because the
> same is working in production with commons httpclient 3.1.
>
> Thanks,
> Bhuvaneswari
>
> -----Original Message-----
> From: Stefan Magnus Landrø [mailto:stefan.landro@gmail.com]
> Sent: Tuesday, May 26, 2015 5:23 PM
> To: HttpClient User Discussion
> Subject: Re: Reg: HttpClient - POST with InputStreamEntity
>
> Are you touching the input stream before passing it on? Have you performed
> a wire capture to see what part of the stream gets lost?
> Stefan
>
> 2015-05-26 13:42 GMT+02:00 Bhuvaneswari Anandhan <
> bhuvaneswari.anandhan@oracle.com>:
>
> > Hi ,
> >
> >
> >
> > In one of my project  we are migrating Apache http client libraries
> > from 3.x to 4.4.1 version .
> >
> >
> >
> > Overview of my application :  This particular application(say XX) is a
> > proxy. To access any of the client application(YY) it should go via
> > proxy (configuration are in place).
> >
> >
> >
> > Proxy application reads the http request generated by the container
> > and creates a new request to client application(YY) using Apache
> > httpclient , after security validation it sets necessary details in
> > the new request build and parses the http client response and sends it
> back to browser..
> >
> >
> >
> > After migration, we are able to handle request with form data and
> > multipart.
> >
> >
> >
> > Problem : For certain type of request, we read the request stream(from
> > browser) and set it in apache httpclient request.
> >
> >
> >
> > For flex AMF request (request content type - "application/x-amf")  we
> > read the stream from request and setting it in HTTP Post request as an
> > InputStreamEntity. This particular request is in complete when it
> > reaches the client application.
> >
> >
> >
> > When the Flex application tries to deserialize the stream send in the
> > request , its failing to read the data. The same was working fine for
> > commons-httpclient3.3.
> >
> >
> >
> > Application Server : Websphere 8
> >
> >
> >
> > Please help me out how I can pass this particular type request to
> > client application using httpclient 4.4.1.
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > Thanks & Regards,
> >
> > Bhuvaneswari
> >
> >
> >
>
>
> --
> BEKK Open
> http://open.bekk.no
>
> TesTcl - a unit test framework for iRules http://testcl.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>


-- 
BEKK Open
http://open.bekk.no

TesTcl - a unit test framework for iRules
http://testcl.com

RE: Reg: HttpClient - POST with InputStreamEntity

Posted by Bhuvaneswari Anandhan <bh...@oracle.com>.
Thank you Stefan,

We are not modifying the input stream generated by the container.

Regarding your second question - Deserializing the input stream is performed by Flex framework. It's trying to deserialize but it's not even throwing any error. We strongly believe no issues with Flex because the same is working in production with commons httpclient 3.1.

Thanks,
Bhuvaneswari

-----Original Message-----
From: Stefan Magnus Landrø [mailto:stefan.landro@gmail.com] 
Sent: Tuesday, May 26, 2015 5:23 PM
To: HttpClient User Discussion
Subject: Re: Reg: HttpClient - POST with InputStreamEntity

Are you touching the input stream before passing it on? Have you performed a wire capture to see what part of the stream gets lost?
Stefan

2015-05-26 13:42 GMT+02:00 Bhuvaneswari Anandhan <
bhuvaneswari.anandhan@oracle.com>:

> Hi ,
>
>
>
> In one of my project  we are migrating Apache http client libraries 
> from 3.x to 4.4.1 version .
>
>
>
> Overview of my application :  This particular application(say XX) is a 
> proxy. To access any of the client application(YY) it should go via 
> proxy (configuration are in place).
>
>
>
> Proxy application reads the http request generated by the container  
> and creates a new request to client application(YY) using Apache 
> httpclient , after security validation it sets necessary details in 
> the new request build and parses the http client response and sends it back to browser..
>
>
>
> After migration, we are able to handle request with form data and 
> multipart.
>
>
>
> Problem : For certain type of request, we read the request stream(from
> browser) and set it in apache httpclient request.
>
>
>
> For flex AMF request (request content type - "application/x-amf")  we 
> read the stream from request and setting it in HTTP Post request as an 
> InputStreamEntity. This particular request is in complete when it 
> reaches the client application.
>
>
>
> When the Flex application tries to deserialize the stream send in the 
> request , its failing to read the data. The same was working fine for 
> commons-httpclient3.3.
>
>
>
> Application Server : Websphere 8
>
>
>
> Please help me out how I can pass this particular type request to 
> client application using httpclient 4.4.1.
>
>
>
>
>
>
>
>
>
> Thanks & Regards,
>
> Bhuvaneswari
>
>
>


--
BEKK Open
http://open.bekk.no

TesTcl - a unit test framework for iRules http://testcl.com

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


Re: Reg: HttpClient - POST with InputStreamEntity

Posted by Stefan Magnus Landrø <st...@gmail.com>.
Are you touching the input stream before passing it on? Have you performed
a wire capture to see what part of the stream gets lost?
Stefan

2015-05-26 13:42 GMT+02:00 Bhuvaneswari Anandhan <
bhuvaneswari.anandhan@oracle.com>:

> Hi ,
>
>
>
> In one of my project  we are migrating Apache http client libraries from
> 3.x to 4.4.1 version .
>
>
>
> Overview of my application :  This particular application(say XX) is a
> proxy. To access any of the client application(YY) it should go via proxy
> (configuration are in place).
>
>
>
> Proxy application reads the http request generated by the container  and
> creates a new request to client application(YY) using Apache httpclient ,
> after security validation it sets necessary details in the new request
> build and parses the http client response and sends it back to browser..
>
>
>
> After migration, we are able to handle request with form data and
> multipart.
>
>
>
> Problem : For certain type of request, we read the request stream(from
> browser) and set it in apache httpclient request.
>
>
>
> For flex AMF request (request content type - "application/x-amf")  we read
> the stream from request and setting it in HTTP Post request as an
> InputStreamEntity. This particular request is in complete when it reaches
> the client application.
>
>
>
> When the Flex application tries to deserialize the stream send in the
> request , its failing to read the data. The same was working fine for
> commons-httpclient3.3.
>
>
>
> Application Server : Websphere 8
>
>
>
> Please help me out how I can pass this particular type request to client
> application using httpclient 4.4.1.
>
>
>
>
>
>
>
>
>
> Thanks & Regards,
>
> Bhuvaneswari
>
>
>


-- 
BEKK Open
http://open.bekk.no

TesTcl - a unit test framework for iRules
http://testcl.com