このレッスンでは、Visual C# クライアントアプリケーションの要求を処理する SOAP/DISH Web サービスが実行されている SQL Anywhere Web サーバを設定します。
前提条件
最新バージョンの Visual Studio が必要です。
このレッスンでは、このチュートリアルの開始時に、権限のセクションで一覧されているロールと権限を持っていることを前提としています。 チュートリアル:Visual C# を使用した SOAP/DISH Web サービスへのアクセス
次のコマンドを使用して SQL Anywhere デモデータベースを起動します。
dbsrv16 -xs http(port=8082) "%SQLANYSAMP16%\demo.db" |
このコマンドは、HTTP Web サーバがポート 8082 で要求を受信することを指定します。ネットワークで 8082 が許可されない場合は、異なるポート番号を使用します。
次のコマンドを使用して Interactive SQL でデータベースサーバに接続します。
dbisql -c "UID=DBA;PWD=sql;SERVER=demo" |
着信要求を受け入れる新しい 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 テーブルからすべてのカラムを選択し、結果セットをクライアントに返します。サービス名は、そのサービス名に出現するスラッシュ文字 (/) のため、引用符で囲まれています。別のユーザ ID でログインする場合、そのユーザ ID を反映するように USER DBA を変更する必要があります。
DATATYPE ON は、明示的なデータ型情報が XML 結果セットの応答と入力パラメータで生成されることを示します。このオプションは、生成される WSDL ドキュメントに影響しません。
FORMAT 句は指定されていないため、SOAP サービスフォーマットは、次のステップで宣言される関連 DISH サービスフォーマットによって指定されます。
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 の一部になります。別のユーザ ID でログインする場合、そのユーザ ID を反映するように USER DBA を変更する必要があります。
Web ブラウザで関連 WSDL ドキュメントにアクセスして、DISH Web サービスが機能していることを確認します。
Web ブラウザを開き、 http://localhost:8082/demo/SASoapTest_DNETにアクセスします。
DISH は、ブラウザのウィンドウに表示される WSDL ドキュメントを自動生成します。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |