わかりました、私はこれについて頭を悩ますのにうんざりしているので、ここの誰かが私を啓発できることを願っています:
PHP と nuSOAP を使用して SOAP サービスにアクセスしようとしています。PHP5 のビルトイン SoapClient を使用してサービスに正常にアクセスできましたが、残念ながら私は PHP4 に限定されており、nuSOAP を使用しています。理解できないWSDLエラーが発生します。
PHP5 コード (動作):
$wsdl= 'https://mybilling.hipointinc.com:8443/wsdl.fcgi?get=Session.xsd';
$soap_client = new SoapClient($wsdl, array('trace'=>1));
$args = array("login" => $account_id, "password" => $password, "domain" => $domain);
$session = $soap_client->login($args);
nuSOAP コード (動作しません):
$wsdl= 'https://mybilling.hipointinc.com:8443/wsdl.fcgi?get=Session.xsd';
$namespace = 'https://mybilling.hipointinc.com/UM/SOAP/Session';
$soap_client = new soapclient($wsdl, true, null, $namespace);
$args = array("login" => $account_id, "password" => $password, "domain" => $domain);
$session = $soap_client->call('login', array($args));
これにより、次のエラーが返されます。
wsdl error: http://schemas.portaone.com/soap:LoginRequest (LoginRequest) is not a supported type.
nuSOAP バージョンが動作しないのに、PHP5 バージョンが動作するのはなぜですか? 私が見落としたばかげたものだと確信していますが、助けていただければ幸いです。
詳細については、Porta Switch、PortaBilling XML API を使用しています:ドキュメント