次のようなサンプルリクエストを使用して、PHPからSOAPWebサービスへのWebサービス呼び出しを行おうとしています。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.somedomain.com/">
<soapenv:Header/>
<soapenv:Body>
<ws:SearchMarketplaceSku>
<ws:Request>
<ws:Security>
<ws:PartnerKey>[suppressed]</ws:PartnerKey>
<ws:Password>[suppressed]</ws:Password>
</ws:Security>
<ws:AvailableOnDate>2012-04-03T00:00:00</ws:AvailableOnDate>
<ws:IncludeStateDetails>true</ws:IncludeStateDetails>
<ws:State>CA</ws:State>
</ws:Request>
</ws:SearchMarketplaceSku>
</soapenv:Body>
</soapenv:Envelope>
使用されているPHPコードは次のとおりです。
$soapClient = new SoapClient($wsdlUrl);
$ap_param = array('PartnerKey' => $PartnerKey, 'Password' => $metapackPassword, 'AvailableOnDate' => '2012-04-03T00:00:00','IncludeStateDetails'=>true, 'State'=>'CA');
$info = $soapClient->__call("SearchMarketplaceSku", $ap_param);
Webサービス呼び出しの結果、「要求が正しく指定されていません。サーバーは要求を逆シリアル化できません」というエラーが発生しますか?何が問題ですか?$ ap_param配列には、XMLに対応するすべてのネストされたノードを含める必要がありますか?「WSDL」モードを使用してこの呼び出しを行う簡単な方法はありますか?
ご協力いただきありがとうございます