http://www.genivia.com/Products/gsoap/demos/index.htmlにある gSOAP Calculator Service の例を作成しました。
Solaris ボックスで Web サービスをデーモンとして実行しています。
今、php ページを使用して、この新しい Web サービスにアクセスしようとしています。http://www.php.net/manual/en/class.soapclient.phpを見て、例を作成しようとしましたが、うまくいきませんでした。誰かがこれを行う例を教えてもらえますか? またはそれを行うためのコードを教えてください。
2 日間かけて Web サイトを調べたり、さまざまなことを試したりしましたが、プロジェクトの時間がなくなりました。手伝ってくれてどうもありがとう。
fyi: Apache サーバーをポート 7000 に設定しています。
<?php
function customError($errno, $errstr)
{
echo "<b>Error: </b> [$errno] $errstr";
}
set_error_handler("customError");
define("SOAP_ENCODED", 1);
define("SOAP_RPC", 1);
$options = array(
'compression'=>true,
'exceptions'=>false,
'trace'=>true,
'use' => SOAP_ENCODED,
'style'=> SOAP_RPC,
'location'=> "http://localhost:7000",
'uri' => "urn:calc"
);
echo "1";
$client = @new SoapClient(null, $options);
echo "2";
$args = array(2, 3);
$ret = $client->__soapCall("add", $args);
echo "3";
if (is_soap_fault($ret))
{
echo 'fault : ';
var_dump($client->__getLastRequest());
var_dump($client->__getLastRequestHeaders());
}
else
{
echo 'success : ';
print '__'.$ret.'__';
}
$client->ns__allAllowed();
?>
Web ページはエラーを返しません。
マイケル