0

以下のphp Webサービスコードがあります。これにより、JavaでこのWebサービスを呼び出すことができます。最初に wsdl を生成する必要がありますか? 次に、wsdl? を使用して Java Web サービス スタブを生成します。これをJavaで呼び出すにはどうすればよいですか。そして、どのツールを使用する必要がありますか。ありがとうございました。

<?php include_once("../../lib/config.php"); ?>
<?php
if(!extension_loaded("soap")){
  dl("php_soap.dll");
}

ini_set("soap.wsdl_cache_enabled","0");
$server = new SoapServer("membersearch.wsdl");

function doMyMemberSearch($membernumber){

    $sqlMemberInfo = mysql_query("SELECT * FROM Member_Info WHERE Member_Number = '".$membernumber."'");
    $rowMemberInfo = mysql_fetch_array($sqlMemberInfo);

  $arr[] = array(
           "anniversary" => $rowMemberInfo['Anniversary'],
           "club"  => $rowMemberInfo['Club'],
           "level"=> $rowMemberInfo['Level'],
           "delivery"=> $rowMemberInfo['Delivery'],
           "firstname"=> $rowMemberInfo['First_Name'],
           "lastname"=> $rowMemberInfo['Last_Name'],
           "birthday"=> $rowMemberInfo['Birthday'],
           "spousefirst"=> $rowMemberInfo['Spouse_First'],
           "spouselast"=> $rowMemberInfo['Spouse_Last'],
           "spousebirthday"=> $rowMemberInfo['Spouse_Birthday'],
           "signuploc"=> $rowMemberInfo['Signup_Loc'],
           "status"=> $rowMemberInfo['Status']

         );
             if (isset($rowMemberInfo['Anniversary'])) {
                 return $arr;
             }else {
                 throw new SoapFault("Server","Unknown Member Number '$membernumber'.");
         }
}




$server->AddFunction("doMyMemberSearch");
$server->handle();
?>
4

1 に答える 1

0

WSDL は実装言語に依存しません。したがって、PHP、C#、Java、またはその他の言語で記述されているかどうかは問題ではありません。サービスの .wsdl ファイルを取得する必要があります。通常、クエリ文字列 '?WSDL' を追加してサービス URL をブラウザで指定すると、これを取得できます。

例:

http://www.example.com/theWebService?WSDL

それができたら、Apache CXF、Apache Axis2、Spring WS、またはその他の Web サービス フレームワークを使用して Java クライアント スタブ コードを生成できます。

于 2012-09-07T19:53:41.477 に答える