このレッスンでは、Visual C# クライアントアプリケーションの要求を処理する SOAP/DISH Web サービスが実行されている SQL Anywhere Web サーバーを設定します。
次のコマンドを使用して SQL Anywhere demo データベースを起動します。
dbsrv12 -xs http(port=8082) "%SQLANYSAMP12%\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 テーブルからすべてのカラムを選択し、結果セットをクライアントに返します。
DATATYPE ON は、明示的なデータ型情報が XML 結果セットの応答と入力パラメーターで生成されることを示します。このオプションは、生成される WSDL ドキュメントに影響しません。DATATYPE 句の詳細については、CREATE PROCEDURE 文 [Web サービス] を参照してください。
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' の一部になります。
Web ブラウザーでアクセスして、DISH Web サービスが機能していることを確認します。
Web ブラウザーを開き、 http://localhost:8082/demo/SASoapTest_DNETにアクセスします。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |