PHP SOAP クライアントによって作成された xml を表示できません。リモート サービスからしかデータを取得できないという問題のトラブルシューティングを行っているため、これを実行したいと考えています。更新を含むオブジェクトの配列を送信しようとすると、SOAP エラーが発生します。
「ObjectSave に失敗しました。エラー: オブジェクト参照がオブジェクトのインスタンスに設定されていません。」
SOAP クライアントを使用してオブジェクトを取得する方法は次のとおりです。
$client->ObjectGet( array('ObjectID' => 1) );//this works just fine
SOAPクライアントを使用して更新しようとしている方法は次のとおりです。
$client->ObjectSave($objectarray);//this is when I get the SOAP Fault
XML を表示するには、次のように SOAP クライアントでトレースを有効にしました。
$client = new SoapClient("http://beta.mywsdlvendor.com", array(
"trace" => true,
"exceptions" => false
)
);
次に、クライアントから生成された xml を次のように表示しようとしました。
echo $client->__getLastRequest();
XML の代わりにこれを取得します。
2013-06-04T14:16:40.744616Z76DJvRi+ktH6JtcQghzkJR2OoyALI=0-1
How do I see the actual XML generated by PHP SOAP Client Class? によると、__getLastRequest() は xml を表示する必要があります。
XML が表示されないのはなぜですか?