2010-11-30 11 views
1

PHP SOAPクライアント経由でSOAPベースのWebサービスに投稿していますが、XML経由の返品を期待しています。情報は期待どおり(このインスタンスではデータベースに書き込む)Webサービスによって処理されていますが、Webブラウザに空白のページが表示されます。SOAP Webサービス経由のASP/SQLからXMLを返さない

戻り値を取得するためにWebサービスに情報をポストしているこのAPIのその他のメソッドは、XMLを返しますが、データベースに書き込まれる情報を投稿するときに表示されないようです値を返す。

$url='wsdl.xml'; 

$client = new SoapClient($url,array('trace'  => 1, 
     'exceptions' => 1)); 

$client = new SoapClient($url,array('soap_version' => SOAP_1_1)); 

$params = array('IntValue'=>$int, 
    'StringValue'=>$string); 

try { 
$client->Test_Parameters_Add($params); 
} catch (SoapFault $exception) { 
    echo 'soap fault occured: '.$exception->getMessage().'<br/>'; 
} 

WSDLファイル:

<s:element name="Test_Parameters_Add"> 
− 
<s:complexType> 
− 
<s:sequence> 
<s:element minOccurs="1" maxOccurs="1" name="IntValue" type="s:int"/> 
<s:element minOccurs="0" maxOccurs="1" name="StringValue" type="s:string"/> 
</s:sequence> 
</s:complexType> 
</s:element> 
− 
<s:element name="Test_Parameters_AddResponse"> 
− 
<s:complexType> 
− 
<s:sequence> 
<s:element minOccurs="1" maxOccurs="1" name="Test_Parameters_AddResult" type="s:int"/> 
</s:sequence> 
</s:complexType> 
</s:element> 
+0

実際に送り返されているものを確認するためにfiddler2などを使用し、ここに投稿してください。 –

+0

APIメソッドを呼び出すページにアクセスすると、Fiddler2で3つの結果が得られます。 301、401、200の回答があります。これらのセッションのそれぞれをクリックし、右側のウィンドウ枠の[XML]タブを表示すると、それぞれが空です。あなたが私にここに投稿してもらいたい他のビットは何ですか? – chocolatecoco

+0

クライアントではなく、Webサービスが壊れているようです。あなたはそれにいくつかのコードを投稿できますか?データがデータベースに追加されたという事実から判断すると、Webサービスコードにアクセスできると推測しています。 – AlastairG

答えて

0

を私は私のPHPコードからオブジェクトの通過を処理していないWebサービスに問題を絞り込むことができました。それは私のコードが間違っているかどうか、私は確信していませんが、誰もそれを指摘している。私は、Webサービスプロバイダに、新しいAPIメソッドを開発させることに頼っています。これにより、RESTをもっと簡単に使用できるようになり、現在は動作しています。

関連する問題