Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » SQL Anywhere サーバー プログラミング » HTTP Web サービス » HTTP Web サービスの例 » チュートリアル:Visual C# を使用した SOAP/DISH Web サービスへのアクセス

 

レッスン 1:SOAP 要求を受信し SOAP 応答を送信する Web サーバーの設定

このレッスンでは、Visual C# クライアントアプリケーションの要求を処理する SOAP/DISH Web サービスが実行されている SQL Anywhere Web サーバーを設定します。

 ♦ RAW 要求を受信し RAW 応答を送信するデータベースサーバーの設定
  1. 次のコマンドを使用して SQL Anywhere demo データベースを起動します。

    dbsrv12 -xs http(port=8082) "%SQLANYSAMP12%\demo.db"

    このコマンドは、HTTP Web サーバーがポート 8082 で要求を受信することを指定します。ネットワークで 8082 が許可されない場合は、異なるポート番号を使用します。

  2. 次のコマンドを使用して Interactive SQL でデータベースサーバーに接続します。

    dbisql -c "UID=DBA;PWD=sql;SERVER=demo"
  3. 着信要求を受け入れる新しい SOAP サービスを作成します。

    Interactive SQL で次の SQL 文を実行します。

    CREATE SERVICE "SASoapTest/EmployeeList"
    TYPE 'SOAP'
    DATATYPE ON
    AUTHORIZATION OFF
    SECURE OFF
    USER DBA
    AS SELECT * FROM Employees;

    この文は、SOAP タイプを出力として生成する SASoapTest/EmployeeList という新しい SOAP Web サービスを作成します。Employees テーブルからすべてのカラムを選択し、結果セットをクライアントに返します。

    DATATYPE ON は、明示的なデータ型情報が XML 結果セットの応答と入力パラメーターで生成されることを示します。このオプションは、生成される WSDL ドキュメントに影響しません。DATATYPE 句の詳細については、CREATE PROCEDURE 文 [Web サービス] を参照してください。

  4. SOAP サービスのプロキシとして機能し、WSDL ドキュメントを生成する新しい DISH サービスを作成します。

    Interactive SQL で次の SQL 文を実行します。

    CREATE SERVICE "SASoapTest_DNET"
    TYPE 'DISH'
    GROUP "SASoapTest"
    FORMAT 'DNET'
    AUTHORIZATION OFF
    SECURE OFF
    USER DBA;

    .NET からアクセスする DISH Web サービスは、FORMAT 'DNET' 句で宣言する必要があります。GROUP 句は、DISH サービスによって処理される必要がある SOAP サービスを識別します。前の手順で作成した EmployeeList サービスは、SASoapTest/EmployeeList として宣言されているため、GROUP 'SASoapTest' の一部になります。

  5. Web ブラウザーでアクセスして、DISH Web サービスが機能していることを確認します。

    Web ブラウザーを開き、[external link] http://localhost:8082/demo/SASoapTest_DNETにアクセスします。

 参照