Edit report at https://bugs.php.net/bug.php?id=61463&edit=1

 ID:                 61463
 Comment by:         markus dot rietzler at rzf dot fin-nrw dot de
 Reported by:        markus dot rietzler at rzf dot fin-nrw dot de
 Summary:            cant import schema when using https soapservice
 Status:             Open
 Type:               Bug
 Package:            SOAP related
 Operating System:   linux
 PHP Version:        5.3.10
 Block user comment: N
 Private report:     N

 New Comment:

nope, proxy_port makes no difference. i wonder whether it is ok to have a mix 
of https and http in schema. maybe a misconfiguration of the service provider 
for this soap service.
but: it has worked with php 5.3.3 and with 5.3.10 it don't work anymore


Previous Comments:
------------------------------------------------------------------------
[2012-03-29 00:54:15] jingshangmingzi at gmail dot com

The proxy_port parameter has to be an integer.
I think you'll have to use 'proxy_port' => 8080

------------------------------------------------------------------------
[2012-03-21 12:33:32] markus dot rietzler at rzf dot fin-nrw dot de

Description:
------------
here is my problem: i want to access a soap-service via 
https://connect.example.com/portal/portal?wsdl 

with php 5.3.3 my script worked, with 5.3.10 it does not work anymore.

in the xml returned:

<service name="PortalService">
<port name="PortalPort" binding="tns:PortalPortBinding">
<soap:address location="http://connect.example.com:80/portal/portal"/>
</port>
</service>
</definitions>

so there is a http and not a https location. is this wrong?
i am not sure, whether this should work in general (using https but with a 
http-location). we use a soapservice from an extern service provider which 
requires us to use https for the calls.

in my php script i used

$client = new SoapClient('https://connect.example.com/portal/portal?wsdl',
        array(  'proxy_host' => 'myproxy',
                'proxy_port' => '8080',
                'trace' => 1,
                'exceptions' => 1,
                // actual use https-endpoint
                'location' => 'https://connect.juris.de/jportal/ws/fvportalnrw'
));


with php 5.3.3 i could create the soapclient and do my requests. the wsdl is 
downloaded and cached in /tmp. with php 5.3.10 i get:

PHP Fatal error:  SOAP-ERROR: Parsing Schema: can't import schema from 
'http://connect.example.com:80/portal/portal?xsd=1' in ./t.php on line 9
PHP Fatal error:  Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing 
Schema: can't import schema from 
'http://connect.example.com:80/portal/portal?xsd=1' in ./t2.php:9

so the schema could not be downloaded! 

what's wrong here? was it a bug in 5.3.3 - and it should not have worked there 
- or is it a bug in 5.3.10 (same for 5.3.8). 

if i used php 5.3.3 to access the service, a wsdl is cached in /tmp and then i 
can call the script with php 5.3.10.




Test script:
---------------
<?php
$client = new SoapClient('https://connect.example.com/portal/portal?wsdl',
        array(  'proxy_host' => 'myproxy',
                'proxy_port' => '8080',
                'trace' => 1,
                'exceptions' => 1,
                // actual use https-endpoint
                'location' => 'https://connect.juris.de/jportal/ws/fvportalnrw'
));
print_r($client);
?>

Expected result:
----------------
SoapClient Object
(
    [_proxy_host] => myproxy
    [_proxy_port] => 8080
    [trace] => 1
    [_soap_version] => 1
    [sdl] => Resource id #9
)


Actual result:
--------------
PHP Fatal error:  SOAP-ERROR: Parsing Schema: can't import schema from 
'http://connect.example.com:80/portal/portal?xsd=1' in ./t.php on line 9
PHP Fatal error:  Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing 
Schema: can't import schema from 
'http://connect.example.com:80/portal/portal?xsd=1' in ./t2.php:9


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



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

Reply via email to