Although the latest version of Magento offers the ability to control how PHP caches the SOAP server’s WSDL file, and my own Mercury API extension offers similar functionality for older version of Magento, sometimes the WSDL caching can still bite you in the butt. While the above features control the caching at the server level, if you’re writing a client script PHP may still be caching the WSDL file.
You can find your PHP WSDL cache files in the tmp
directory.
$ ls /tmp/wsdl-*
When you’re working on API files, adding a
$ rm /tmp/wsdl-*
to your clear cache script in a no-brainer. The above command blows away the PHP WSDL cache, and forces it to refetch the file. With that file blown away, you’ll have much less trouble tracking down your
Resource path not callable
Invalid API path
Is not a valid method
SOAP errors.