SOAPでデータベース検索のWebサービスを実行し、1件の検索結果を取得したい
キーワード:Webサービス,Webサービスアダプタ,SOAP
シナリオ一覧に戻る
概要
公開されたWebサービスを呼び出したい場合、ネットワークアダプタのWebサービス実行処理を使用します。
「共通製品コード」を引数として、公開されているWebサービスを呼び出します。
呼び出し先のWebサービスから出力された値をCSVファイルに出力します。
本スクリプトは逆引きリファレンス「データベースを検索して、1件の結果を返す処理をSOAPのWebサービスとして公開したい」をWebサービスとして呼び出します。
処理の流れ
サンプルプロジェクトの処理の流れは以下の通りです。
- 「マッピング処理」で「共通製品コード」の値を「Webサービス実行処理」の入力スキーマにマッピングします。
- 「Webサービス実行処理」でWebサービスを実行し、データを取得します。
- 「マッピング処理」で上記で取得したデータを「CSVファイル書き込み処理」の入力スキーマにマッピングします。
- 「CSVファイル書き込み処理」でCSVファイルに書き込みます。
実行結果のイメージについては、サンプルプロジェクトのサンプルデータ「output.csv」を参照してください。
ポイントとなる機能
名前 |
説明 |
ツールパレット上の場所 |
Webサービス実行処理 |
Webサービスを実行します。 |
「ネットワーク」-「Webサービス」-「Webサービス実行」 |
処理のポイント
「共通製品コード」の値を引数としてWebサービス実行処理を行います。
Webサービス実行処理の実行結果からCSVファイル書き込み処理の入力スキーマにマッピングすることで、CSVファイルに出力することが可能となります。
サンプルプロジェクトの使用方法
上記処理を実装したサンプルプロジェクトを用意しています。サンプルプロジェクトを使用する場合の手順は、以下の通りです。
サンプルプロジェクトファイル名 |
rl_reference_044-045.zip |
- サンプルプロジェクトの展開
サンプルプロジェクトファイル「rl_reference_044-045.zip」を展開します。
- プロジェクトのアップロード
「rl_reference_044-045.zip」を展開後に作成される「rl_reference_044-045プロジェクト」ディレクトリがプロジェクトファイルとなります。
DataSpider Studioを起動し、マイプロジェクトの画面から[ファイル]-[ローカルからアップロード]で展開したディレクトリ「rl_reference_044-045プロジェクト」をアップロードしてください。
本シナリオに該当するスクリプトは、「rl_reference_044-045プロジェクト」のスクリプト「rl_reference_045」です。
- サンプルデータの準備
「rl_reference_044-045.zip」を展開後に作成される「samples」ディレクトリがサンプルデータとなります。
$DATASPIDER_HOME/server/samplesディレクトリに上書きしてください。
- Webサービスの公開
本スクリプトで呼び出すWebサービスを公開します。
Webサービスの公開方法については、逆引きリファレンス「データベースを検索して、1件の結果を返す処理をSOAPのWebサービスとして公開したい」を参照してください。
- グローバルリソースの設定
コントロールパネルの[グローバルリソースの設定]から、[新しいグローバルリソースの追加]を選択し、Webサービスのグローバルリソースを追加します。
グローバルリソースの設定方法については、「グローバルリソースのプロパティ」を参照してください。
スクリプトの作成手順
プロセスフローおよびデータフローは、「サンプルプロジェクトの説明」のスクリプト画像を参照して適宜設定してください。
- デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping」)をスクリプトキャンバスに配置します。
- デザイナのツールパレット「ネットワーク」-「Webサービス」-「Webサービス実行」から、Webサービス実行処理をスクリプトキャンバスに配置します。
- Webサービス実行処理の設定は、以下のように行います。
[必須設定]タブ
- マッピング処理(「mapping」)のMapperエディタを開き、「共通製品コード」の値をWebサービス実行処理の入力スキーマにマッピングする処理を作成します。
- マッピングキャンバスは、以下のように設定します。
マッピングキャンバス

番号 |
ロジック名 |
説明 |
ツールパレット上の場所 |
(1) |
単一行文字列定数 |
単一行の文字列定数を出力します。
[必須設定]タブの[一行文字列]に「PRODUCT24」を入力します。 |
「文字列」-「基本」-「単一行文字列定数」 |
処理のポイント
- 「共通製品コード」の値を引数とするため、Webサービス実行処理の入力スキーマにマッピングします。
|
- デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping(1)」)をスクリプトキャンバスに配置します。
- デザイナのツールパレット「ファイル」-「CSV」-「CSVファイル書き込み」から、CSVファイル書き込み処理をスクリプトキャンバスに配置します。
- CSVファイル書き込み処理の設定は、以下のように行います。
[必須設定]タブ
[書き込み設定]タブ
- マッピング処理(「mapping(1)」)のMapperエディタを開き、Webサービス実行処理の実行結果からCSVファイル書き込み処理の入力スキーマにマッピングする処理を作成します。
- マッピングキャンバスは、以下のように設定します。
マッピングキャンバス

処理のポイント
- Webサービス実行処理の実行結果からCSVファイル書き込み処理の入力スキーマにマッピングすることで、CSVファイルに出力することが可能となります。
|
- スクリプトを実行し、正常終了すれば成功です。