ID:               50698
 User updated by:  zippy1981 at gmail dot com
 Reported By:      zippy1981 at gmail dot com
 Status:           Open
 Bug Type:         Feature/Change Request
 Operating System: Windows XP
-PHP Version:      5.2.12
+PHP Version:      5.2.12, 5.3.1
 New Comment:

Also verified to break on 5.3.1.


Previous Comments:
------------------------------------------------------------------------

[2010-01-08 21:52:35] zippy1981 at gmail dot com

I also reported this on stack overflow. If anyone has any suggestions 
for workarounds, especially if there workaround on the .NET side feel 
free to post them there.


http://stackoverflow.com/questions/1933213/connecting-to-a-wcf-service-
in-php-that-has-a-a-nettcp-binding-and-a-basichttpbin

------------------------------------------------------------------------

[2010-01-08 21:19:44] zippy1981 at gmail dot com

Description:
------------
I have a WCF web service written in .NET that has different endpoints.
I 
want .NET clients to be able to talk to it using nettcp (a propietary 
microsoft protocol) and PHP to be able to talk to it using basicHttp 
(soap 1.1). However, if WSDL contains any endpoints other than http or

https endpoints I get the following error:

PHP Fatal error:  SOAP-ERROR: Parsing WSDL: PHP-SOAP doesn't support 
transport 'http://schemas.microsoft.com/soap/tcp'

I think the following should occur:

If no endpoint is explicitly specified in the constructor, PHP should 
pick the first compatible endpoint available in the wsdl and use it. If

the endpoint is explicitly declared in the constructor, then PHP should

not care about the available endpoints.

Reproduce code:
---------------
<?php
// .NET Service that this calls exists at
http://github.com/zippy1981/EchoService
$client = new SoapClient
        ('http://localhost:8731/EchoService/?wsdl',
         array(
                'location' =>
'http://localhost:8731/EchoService/Basic',
                'trace' => true,
                'soap_version' => SOAP_1_1,
                'connection_timeout' => 5
        )
);

echo $client->echo(array('request' => "Hello World"))->EchoResult;
?>

Expected result:
----------------
c:\php\php.exe EchoClient.php
Hello World

Actual result:
--------------
PHP Fatal error:  SOAP-ERROR: Parsing WSDL: PHP-SOAP doesn't support 
transport 'http://schemas.microsoft.com/soap/tcp'


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=50698&edit=1

Reply via email to