+
+

ラボ 1: RAML 定義を Studio にインポート

概要

このラボでは、MySQL データベースへのリクエストを処理する Product API のスケルトン実装を作成します。Anypoint Studioを使用して、各リソースのメソッドごとに1つのフローがあるMuleアプリケーションを作成します。(例:GET Products)。 さらに、APIKit (Mule アプリケーションの一部として) を使用して REST リクエストを処理します。 それらを各フローによって扱い、処理されるメッセージに変換します。

module8 lab1 overview

ステップ 1: 新規Muleプロジェクトを作成し、RAML 定義をインポート

  1. まだAnypoint Studioを起動していない場合は、デスクトップ・アイコンから Anypoint Studio を起動し、作業していたワークスペースと同じワークスペースを選択します(例:C:workspaces\myworkspace)。

  2. Anypoint Studioのメニューから、[File] > [New] > [Mule Project]を選択して、新規Muleプロジェクトを作成します。新しいアプリケーションの詳細を定義するウィンドウがポップアップします。

  3. プロジェクトに product-api という名前を付けます。

  4. Mule Server 4.4.0 EE (もしくは最新のバージョン) を選択します。

  5. Import a published API の下で、Exchange から RAML 仕様をインポートします。 module8 studio plus button をクリックし、 from Exchange を選択します。

    module8 lab1 new mule api project
  6. クリックすると、新しいウィンドウが表示されます。 ユーザー名が表示されない場合、Anypoint Platform にログインする必要があります。 Add Account ボタンをクリックしてログインすると、 すべての API のリストが表示されます。

  7. Product API を選択し、 Add を押します。

    module8 lab1 product api for database

    Product API を選択するときは必ず Publisher がワークショップのビジネスグループの名前になっていることを確認してください。

  8. Finish を押します。

  9. 問題がないことを確認してください。Scaffold flows from these API Specifications チェックされていることを確認してください。

    module8 lab1 check create
  10. APIkit は、API 仕様に基づいて生成された実装を使用して、新しい Anypoint Studio プロジェクトを作成します。 生成された構成は、インバウンドの HTTP リスナーのほか、すべてのリソース、リクエスト/レスポンスのデータタイプのメタデータなどを実装しています。

module8 lab1 new project

ステップ 2: APIの実行

API を確認するために、まず Studio 内で実行してみましょう。

  1. Package Explorer view で api-products を右クリックします。 Run As > Mule Application を選択します。

    module8 lab1 run mule app
  2. アプリケーションを起動するたびに、正常に起動していることを確認する必要があります。 コンソールタブでプロジェクトが "DEPLOYED" と表示されていることを確認します。

    module8 lab1 console started
  3. アプリケーションがデプロイされると、 Anypoint Studio アプリケーションをテストできる APIkit コンソールのタブが開きます (コンソールにアクセスするには、リンクをクリックしてブラウザで Product API コンソールを開きます)

    module8 lab1 api console

    GET タブをクリックし、Products 取得メソッドをテストします。

  4. Acceptフィールドには、必要に応じて application/json を入力してください。

  5. Send ボタンを押します。

    module8 lab1 api console send
  6. 3 番目のパネルを下にスクロールすると、API 仕様で定義されているサンプルレスポンスが表示されます。

    module8 lab1 api console 200
  7. コンソールタブに移動し、赤いボタンを押して Mule ランタイムサーバを停止します。

    module8 lab1 studio stop mule

次のラボでは、データベースに接続するためのフローを更新します。

まとめ

このモジュールラボでは、APIKitを使用したAnypoint Studioプロジェクト作成を使用して、Exchangeに格納されたRAMLからスケルトンAPIを作成しました。Anypoint Studioに組み込まれているローカルMuleランタイム上でAPIを実行してテストしました。

Exchangeに格納されているAPIデザイン(RAML)から、Anypoint Studioを使用してAPIKitを使用してスケルトン実装プロジェクトを簡単に生成できることを確認しました。他の任意の RAML をプロジェクト作成プロセスの一部として参照することもできますし、後で RAML をインポートして、必要に応じてインターフェースを生成することも可能です。

詳細については、 APIKIT のドキュメントを参照してください。

ラボ 2へ進んで下さい。

Submit your feedback!
Share your thoughts to help us build the best workshop experience for you!
Take our latest survey!