Reply to SoapClient not sending proper SOAP requests -- how do I correct this?

Your name:

Reply:


Posted by Joshua Beall on 08/31/07 13:54

Hi All,

I've got the following PHP code:

$service = new SoapClient("http://www.webservicex.net/length.asmx?
wsdl");
$result = $service->ChangeLengthUnit(10,"Inches","Centimeters");
var_dump($result);


It returns:

object(stdClass)#2 (1) {
["ChangeLengthUnitResult"]=>
float(0)
}

If you manually go to http://www.webservicex.net/length.asmx?op=ChangeLengthUnit
and try the operation yourself, you'll see that it returns 2.54.

I used Wireshark to see what SOAP request was actually being sent, and
here's what I found:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/
envelope/" xmlns:ns1="http://www.webserviceX.NET/">
<SOAP-ENV:Body>
<ns1:ChangeLengthUnit/>
<param1>Inches</param1>
<param2>Centimeters</param2>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

This isn't right! Here's what the request *should* look like. The XML
namespaces are different, but that's ok; the problem is the content of
the Body element.

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://
schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ChangeLengthUnit xmlns="http://www.webserviceX.NET/">
<LengthValue>1</LengthValue>
<fromLengthUnit>Inches</fromLengthUnit>
<toLengthUnit>Centimeters/ChangeLengthUnit>
</soap:Body>
</soap:Envelope>



Windows XP Pro, IIS 5.1, and PHP 5.2.1 -- is there a bug that was
resolved in later versions of PHP? Or am I missing something?

-Josh

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация