Hi Andrew,

I just looked at the code of SimpleSOAP. In SOAPonHTTP.cpp you can find the following code:

// Find the start of the SOAP message.
nPos = KszMessage.find( g_KszSOAP );

The g_KszSOAP constant is defined as follows:

const std::string g_KszSOAP = "<SOAP";

SimpleSOAP indeed assumes that the namespace prefix of the root element of the message starts with "SOAP" (which of course is not required by any specification)! Sorry to say that, but you should seriously consider migrating your code from SimpleSOAP to something less braindead...

Regards,

Andreas

On 11 Jan 2008, at 21:26, Andrew Wood wrote:

Hi

The server, which I've wrote myself, uses the C++ based SimpleSOAP framework. It may be a fault with the server but I cant see what it may be.

This is the complete SOAP sent by Axis to call a method getString, which takes a single string parameter on an object called Test.. to me it looks perfectly OK..

POST /Test HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related, text/*
User-Agent: Axis/1.4
Host: 10.0.1.4:2000
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: ""
Content-Length: 385

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/ " xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance ">
                <soapenv:Body>
<getString soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/ ">
                                        <name 
xsi:type="xsd:string">Andrew</name>
                        </getString>
                </soapenv:Body>
        </soapenv:Envelope>



Regards
Andrew



On 11 Jan 2008, at 19:52, Andreas Veithen wrote:


@Andrew: The value of the namespace prefix (soapenv or SOAP-ENV) indeed doesn't matter. The only thing that is relevant is the namespace URI it is bound to (http://schemas.xmlsoap.org/soap/envelope/ ). Do you have any idea what Web service framework the server uses?

Regards,

Andreas


On 11 Jan 2008, at 20:39, Alastair FETTES wrote:

Hi Andrew.

Theoretically soapenv should be perfectly acceptable. Irregardless of
what the prefix is, as long as the actual namespace is the same it
should recognize things appropriately.



Reply via email to