This article describes what to do in case you need to store the WSDL files locally.
When you try to load a WSDL URL via HTTPS, an error like this may be returned:
PHP Fatal error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://192.168.14.187:443/soap2/schema/3.5.0/Billing/Billing.wsdl' : failed to load external entity "https://192.168.14.187:443/soap2/schema/3.5.0/Billing/Billing.wsdl"
Step-by-step guide
Depending on the required WSDL, you must download the schema locally taking the steps below:
STEP 1: Log in to your server as root
using either SSH from Linux or Putty from Windows.
STEP 2: Go to the SOAP schema folder.
cd <VOIPNOW_ROOT_D>/admin/htdocs/soap2/schema
where <VOIPNOW_ROOT_D>
is defined in /etc/voipnow/paths.conf
.
STEP 3: Tar the desired schema version.
tar -cvf soap_350.tar.gz 3.5.0/
STEP 4: Copy and untar that archive on your server, and then load the WSDL from there. To untar the archive type:
tar -xzvf soap_350.tar.gz
STEP 5: In your .php file, the WSDL is requested from the local files:
new SoapClient('local_path', $options);
Related articles
#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))