Issue Details (XML | Word | Printable)

Key: AXISCPP-311
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Samisa Abeysinghe
Reporter: Samisa Abeysinghe
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Axis-C++

Add support for "100 Continue" in Axis2Transport

Created: 07/Dec/04 01:49 AM   Updated: 04/Jan/05 07:48 PM
Return to search
Component/s: Transport (axis2)
Affects Version/s: None
Fix Version/s: 1.5 Alpha

Time Tracking:
Not Specified

Environment: All platforms

Resolution Date: 04/Jan/05 07:48 PM


 Description  « Hide
See http://marc.theaimsgroup.com/?t=110234692300003&r=1&w=2 for more info:

I've had this same problem when talking to .NET web services -- it
seems
that the problem is that IIS is returning an "HTTP 100 Continue" status
code prior to the actual SOAP response, which Axis chokes on. The
quick-and-dirty fix I found was to use the 'Axis2Transport' transport
DLL, after patching the sources in the Axis2Transport constructor to
use
HTTP 1.0, instead of 1.1.

In 'src/transport/axis2/Axis2Transport.cpp', change the string
"HTTP/1.1" in the m_strHTTPProtocol initializer to "HTTP/1.0", which
will force the client transport to use HTTP 1.0 by default. There's a
method in the transport class to set the protocol version, but it's not
part of the standard public Transport class interface, and therefore
not
available to any code that's using the standard API calls.

I know that I really should have entered this as a bug in JIRA; I've
just been too busy on other fronts to make a proper bug report.
Hopefully, the longer-term solution will be to properly support the
HTTP
100 response code, so that you don't have to give up the other benefits
of HTTP 1.1 protocol support (like pipelining) just to retain
compatibility with .NET servers.

--
Lennon Day-Reynolds
lennonx.j.day.reynolds@intel.com

-----Original Message-----
From: Matt Garman [mailto:garman@raw-sewage.net]
Sent: Monday, December 06, 2004 7:27 AM
To: axis-c-user@ws.apache.org
Subject: exception with simple client


Hello,

I created a couple very simple web services on my machine (Win 2k)
using MS VS.NET 2003: "getTimeOfDay()" and "getHelloWorld()"
services.

Now I am trying to create a C/C++ client to consume these services
using Apache Axis C++. However, when I try to call even the
getHelloWorld() method, the following exception is thrown:

        AxisTransportException:HTTP transport error Continue

Any ideas on what could be causing this? (Hopefully it's just me
overlooking something obvious!)

Thanks,
Matt

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Samisa Abeysinghe added a comment - 04/Jan/05 07:48 PM
Added support for 100 continue.
Tested with http://www.mssoapinterop.org/asmx/typed.asmx endpoint. This is a .NET round 1 interop test endpoint.
I had to manually edit the generated code to change the SOAPAction header value to get the base sample working with this service. However, now 100-Continue works.