0

nusoapを使ってserviseを呼ぼうとしています。サービスは元々Javaで記述されており、入力としてJavaオブジェクトを必要とします。phpに入力を受け入れさせるにはどうすればよいですか?現時点では、サービスは次のアプローチを理解していません(入力がnullであると考えています)。

$obj = (object) array('param1_name' => 'value1', 'param2_name' => 'value2', ..);

$obj = (object) array('value1', value2,...);

$obj = (object) array('String_1' => 'value1', 'Long_1' => value2, ...);

私も次のアプローチを試しました:

http://www.php.net/manual/en/book.soap.php#83409

4

1 に答える 1

0

リモートサービスがSOAPを使用していて、wsdlがある場合は、機能するはずです。しかし、あなたが言うには、サービスにはJavaオブジェクトが必要です。これはRMI(リモートメソッド呼び出し)のように聞こえます。その場合、nusoapでは使用できず、PHPでは使用できません。その場合、サービスにはシリアル化されたJavaオブジェクト(XMLではない)が必要であり、(通常は)Javaのみがそれらを作成および読み取ることができます。


通常、SOAPプロトコルはxmlドキュメントを交換します。したがって、サーバーがJavaで実装されているかどうかは関係ありません。データ形式は、wsdlによって含まれるか参照されるxmlスキーマで定義されます。

SOAPWebサービスで「遊ぶ」ための非常に優れたツールはsoapUIです。soapUIを使用すると、テキストエディターでリクエストを記述し、生の応答を確認できます。インストールして、サービスで使用する必要があります。


参考文献:

于 2010-08-27T11:28:32.773 に答える