You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Chris Mannion <ch...@nonstopgov.com> on 2010/01/28 10:34:29 UTC

Use of HTTP/1.0 or 1.1 in Axis 1.4

Hi All

Can anybody tell me what determines which HTTP version is used when an
Axis 1.4 client, running under Tomcat 5.5, sends an out-going request
to a web-service?  I have two servers that are both running the same
code and the version of the Axis 1.4 libraries connecting to an
external web-service.  The problem arrises because the web-service
doesn't seem to support HTTP/1.1 requests with chunked encoding and
the HTTP headers on the out-going messages shows that one of the
servers is sending over HTTP/1.0 and connecting successfully to the
service while the other is sending over HTTP/1.1 with chunked encoding
and the request fails.  I've no idea what has caused the difference
between the two servers but, if possible, forcing the second to us
HTTP/1.0 would solve the problem.

Does anyone know what determines the HTTP version that the outgoing
messages are sent over and how to set it?

-- 
Chris Mannion
iCasework and LocalAlert implementation team
0208 144 4416

Re: Use of HTTP/1.0 or 1.1 in Axis 1.4

Posted by Chris Mannion <ch...@nonstopgov.com>.
Yashwanth,

Thank you, we discovered that the reason HTTP 1.1 and chunking was
being used was because a client-config.wsdd file had been altered to
use the CommonsHTTPSender rather than the default Axis HTTP handler.
This was done because some MapPoint/Virtual Earth services we connect
to require Digest/NTLM authentication which the default Axis handler
doesn't support.  However, the CommonsHTTPSender defaults to HTTP 1.1
whereas the default Axis handler defaults to HTTP 1.0, and now we're
hitting another service which doesn't seem to support either the 1.1
or chunking or both.

I'm aware that we can switch off chunking in the properties, and have
an Axis2 version of the client code which does so, however my Axis1.x
version of the code is programmed using the javax.xml.soap interfaces
rather than using Axis objects directly so I haven't worked out how to
get hold of the properties object in order to set that property.
Thanks for the help anyway, there are a few other avenues we can
explore now we know what is setting the HTTP versions.

On 28 January 2010 19:03, Yashwanth Rajaram -X (yrajaram - Zensar at
Cisco) <yr...@cisco.com> wrote:
> Chris,
>
> Instead of that do you want to try turning off chunking?
>
> setProperty(HTTPConstants.CHUNKED, false);
>
> or
>
> See http://wso2.org/library/209 for info on forcing HTTP version to be
> used etc
>
>
> thanks,
> --
> Yashwanth
> These are my openion only and not that of my employer(s).
>
> -----Original Message-----
> From: Chris Mannion [mailto:chris.mannion@nonstopgov.com]
> Sent: Thursday, January 28, 2010 1:34 AM
> To: axis-user
> Subject: Use of HTTP/1.0 or 1.1 in Axis 1.4
>
> Hi All
>
> Can anybody tell me what determines which HTTP version is used when an
> Axis 1.4 client, running under Tomcat 5.5, sends an out-going request
> to a web-service?  I have two servers that are both running the same
> code and the version of the Axis 1.4 libraries connecting to an
> external web-service.  The problem arrises because the web-service
> doesn't seem to support HTTP/1.1 requests with chunked encoding and
> the HTTP headers on the out-going messages shows that one of the
> servers is sending over HTTP/1.0 and connecting successfully to the
> service while the other is sending over HTTP/1.1 with chunked encoding
> and the request fails.  I've no idea what has caused the difference
> between the two servers but, if possible, forcing the second to us
> HTTP/1.0 would solve the problem.
>
> Does anyone know what determines the HTTP version that the outgoing
> messages are sent over and how to set it?
>
> --
> Chris Mannion
> iCasework and LocalAlert implementation team
> 0208 144 4416
>



-- 
Chris Mannion
iCasework and LocalAlert implementation team
0208 144 4416

RE: Use of HTTP/1.0 or 1.1 in Axis 1.4

Posted by "Yashwanth Rajaram -X (yrajaram - Zensar at Cisco)" <yr...@cisco.com>.
Chris,

Instead of that do you want to try turning off chunking?

setProperty(HTTPConstants.CHUNKED, false);

or

See http://wso2.org/library/209 for info on forcing HTTP version to be
used etc


thanks,
--
Yashwanth
These are my openion only and not that of my employer(s).

-----Original Message-----
From: Chris Mannion [mailto:chris.mannion@nonstopgov.com] 
Sent: Thursday, January 28, 2010 1:34 AM
To: axis-user
Subject: Use of HTTP/1.0 or 1.1 in Axis 1.4

Hi All

Can anybody tell me what determines which HTTP version is used when an
Axis 1.4 client, running under Tomcat 5.5, sends an out-going request
to a web-service?  I have two servers that are both running the same
code and the version of the Axis 1.4 libraries connecting to an
external web-service.  The problem arrises because the web-service
doesn't seem to support HTTP/1.1 requests with chunked encoding and
the HTTP headers on the out-going messages shows that one of the
servers is sending over HTTP/1.0 and connecting successfully to the
service while the other is sending over HTTP/1.1 with chunked encoding
and the request fails.  I've no idea what has caused the difference
between the two servers but, if possible, forcing the second to us
HTTP/1.0 would solve the problem.

Does anyone know what determines the HTTP version that the outgoing
messages are sent over and how to set it?

-- 
Chris Mannion
iCasework and LocalAlert implementation team
0208 144 4416