GroovyスクリプトからRESTful Webサービスをコールする方法
アプリケーション・コンポーザのGroovyスクリプトからRESTful webサービスを呼び出すことができます。 内部または外部データにアクセスしたり、データに対して計算を実行するために、webサービスをコールできます。
スクリプトからRESTful webサービス・メソッドを呼び出すには、2つの概要レベルのステップが必要です:
-
webサービスへの参照の作成。
これには、webサービスのエンドポイントを、Groovyスクリプトで使用する変数名に登録することが含まれます。
-
webサービスを呼び出す式ビルダーへのGroovyスクリプトの記述。
各コールについて、スクリプトはwebサービスへのインバウンド引数を準備し、Webサービス・メソッドをコールして、Webサービスからの戻り値を処理する必要があります。
Webサービス参照の作成
スクリプトで使用するwebサービスを登録するには、最初にアプリケーション・コンポーザの「共通設定」ペインで「Webサービス」を選択します。 RESTまたはSOAPを選択できます。 RESTサービスを登録するには、RESTを選択します。 次に、webサービス変数名を、コールするサービスを表すリソースのロケーションを提供するURLに関連付けます。
たとえば、アプリケーションがTwitter(この場合はYosemite)からツイートを取得するためにコールする必要があるwebサービスに対して、Webサービス変数名TwitterSearchを登録できます。 このwebサービスのロケーションのURLは次のようになります:
https://api.twitter.com/1.1/search/tweets.json?q=yosemite
または、クラウド・サービス内などの内部webサービスでこの機能を使用することもできます。 この場合、URLは次のようになります:
http://host:port/OpptyService/rest/v1/Oppty?q=OpptyId=##OpptyId##
もちろん、実際のサービスのサーバー名、ポート番号、およびパス名は異なります。 ポート番号を省略すると、サービスはデフォルトのHTTPポート番号80でリスニングしているとみなされます。
Webサービスを呼び出すためのGroovyスクリプトの記述
Groovyスクリプトからwebサービスをコールする場合、Webサービス・メソッドをコールする前にWebサービスへの引数を準備してから、Webサービスから返されたデータを処理する必要があります。 スクリプトは、webサービスとの間で構造化ペイロードを渡すこともできます。
式ビルダーの「Webサービス」タブから、webサービスへのコールのコードを挿入します。 「Webサービス」リストには登録済のwebサービス変数名のセットが表示され、「関数」リストには特定のWebサービスで使用可能なメソッドが表示されます。
GroovyスクリプトでRESTful webサービスへのコールを挿入するには:
-
式ビルダーの「Webサービス」タブを選択します。
-
RESTを選択します。
-
「Webサービス」リストから変数名を選択します。
-
「関数」リストからメソッドを選択します。
挿入されるコードは、「機能シグネチャ」の下に表示されます。
関数シグネチャの情報には、パラメータ・タイプと、コールの結果を割り当てる変数のタイプを示す戻りタイプも含まれます。 使用可能な戻り型は次のとおりです:
戻り値
返品タイプ
無効化
無効化
スカラー値(整数、文字列など)
実際のJava戻り型
オブジェクト
マップ
コレクション
リスト
-
webサービス・コールを挿入するスクリプト内の位置にカーソルを置きます。
-
「挿入」ボタンをクリックして、webサービス・メソッドを呼び出すコードを挿入します。
Groovyスクリプトからのwebサービス・コールの構文は次のとおりです:
adf.webServices.YourServiceVariableName.MethodName(args)
たとえば:
adf.webServices.ContactAddressAPI.Get("7627")
-
「送信」をクリックします。