PEAR is discontinued

This is a static archive preserving historical releases and metadata. No new packages or updates will be published. For updates to existing packages, or to publish new packages, please use Composer and Packagist.

Home » Web Services » SOAP » Bug #1953

Unable to call a webservice from javascript

Details

Submitted2004-07-22 14:24 UTC
Fromkobler at help2 dot com
Assignedchagenbu
StatusNo Feedback
PackageSOAP
PHP Version5.0.0
OSWindowsXP
Roadmaps(Not assigned)

Comments

[2004-07-22 14:24 UTC] kobler at help2 dot com

Description:
------------
Hi,

I try to call a simple web service from IE using javascript soap webservice. This webservice works if I access it with a soapclient in php, but didn't work if I try from javascript.

In this sample I just try to access to a method called "test" that return a string value.

I've make some tests and apparently soapServer don't recognize the namespace ...

Here is the soap enveloppe if I call it from javascript :
<?xml version='1.0' encoding='utf-8'?>
<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="urn:HelloServer" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<mswsb:test xmlns:mswsb="HelloServer" xmlns=""></mswsb:test></SOAP-ENV:Body>
</SOAP-ENV:Envelope>

As you can see there is some differences in the soap body compare to the same call doing from soapclient write in php :

<?xml version="1.0" encoding="UTF-8"?>

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns4="HelloServer"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>

<ns4:test/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Reproduce code:
---------------
The javascript MS soap call :

<?xml version='1.0' encoding='utf-8'?>
<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="urn:HelloServer" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<mswsb:test xmlns:mswsb="HelloServer" xmlns=""></mswsb:test></SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Expected result:
----------------
I receive this error message :

"method '}test' not defined in service"

When I try to call the "test" method (that just return a string value)