简体   繁体   中英

PHP Soap - Can't import schema

I want to connect to a Soap server, but I have the error :

SOAP-ERROR: Parsing Schema: can't import schema from 'http://domain.com:80/services.xsd

I took a look on other questions, and I have my "allow_url_open" to ON, I use SOAP_1_1 and OpenSSL is enabled. Something is weird, the URL to my SOAP server is :

https://domain.com/services?WSDL

And in the error, there is no more "https", but only "http" on port 80. I tried :

wget https://domain.com/services?WSDL

And it works. I have an XML file with all my services. But, using PHP and :

try
{
    $client = new SoapClient('https://domain.com/services?wsdl',         
    array(
        "trace" => 1,
         "soap_version" => SOAP_1_1
   ));                 
}
catch (SoapFault $e)
{
   var_dump($e);
}

I have the "Parsing Schema: can't import schema" error. Do I need to configure something else on my PHP ? I am using Nginx and PHP-FPM 5. Thanks.

http://domain.com:80/services.xsd

Are you able to access above link in your browser?

No, I guess.Similarly it is not accessible through your code also. This schema location must be defined in your wsdl ie

 https://domain.com/services?WSDL

You can add those elements from schema into wsdl. You can follow this approach to get rid of it.

http://weblogs.thinktecture.com/cweyer/2007/05/improving-wcf-interoperability-flattening-your-wsdl.html

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM