Hello everyone,
I have a WSDL in the following URL format (obscured):
https://provider.web-service.domain/path/ServiceName?wsdl
that resolves to:
https://provider.web-service.domain/path/ServiceName/another/diff/path/prefix_ServiceName.wsdl
The WSDL has a line like this:
<wsdl:import namespace="http://name/space/service/"
location="ServiceName.wsdl"></wsdl:import>
When loading the former URL into SoapClient, it complains like so:
PHP Fatal error: SOAP-ERROR: Parsing WSDL:
Couldn't load from
'https://provider.web-service.domain/path/ServiceName.wsdl' :
failed to load external entity
"https://provider.web-service.domain/path/ServiceName.wsdl"
The reason i believe this happens is because it's trying to look for
ServiceName.wsdl at the original location,
ie. It is looking here:
https://provider.web-service.domain/path/ServiceName.wsdl
instead of the final resolved location, here:
https://provider.web-service.domain/path/ServiceName/another/diff/path/ServiceName.wsdl
As expected, if i pass the resolved URL into SoapClient, it works.
This is not ideal because the resolved address can potentially change at any
time.
Is this a problem with SoapClient that can *and* need to be resolved?
Your thoughts. Thanks
superspace
The question on stackoverflow is here:
http://stackoverflow.com/questions/17226451/php-soapclient-couldnt-load-from-external-entity-where-endpoint-resolves-to-a
--
PHP Soap Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php