+
+

ラボ 3: APIの実行とデバッグ

概要

このステップでは、前のラボで終了した実装をテストします。API をテストするために、Anypoint Studio を使用します。また、メッセージ・ペイロードやトラブルシューティングについて理解するために、基本的なデバッグ手順を学びます。

ステップ 1: Anypoint Studio からMule API(Application)を実行

ラボ 2では、インバウンドメッセージとアウトバウンドメッセージをフォーマットしたので、再度実行しても構いませんが、今回はデプロイ済みの.NET SOAPサービスを操作して、注文データベースにデータを挿入します。

  1. Anypoint Studio を起動して、プロジェクトを含むワークスペースを 開き ます。

  2. デバッグ・モード でアプリケーションを実行する前に、ブレークポイントを使用して、フローを停止し通過するメッセージを照会することをお勧めします。この方法により、transform コンポーネントのような各プロセッサがメッセージの内容をどのように変更するかを確認できます。

  3. 最初のコンポーネントを 右クリック して、Toggle breakpoint オプションを 選択 して、最初の Web Service Consumer プロセッサのブレークポイントをオンにしてみましょう。

    module9 lab3 as debug breakpoint
  4. ブレークポイント をオンにした状態(赤い点が表示されている)で、Save ボタンを クリック してプロジェクトを保存します。

    module9 lab3 as debugbreakpoint2
  5. 次に、アプリケーション(または パッケージ・エクスプローラー のトッププロジェクトフォルダ)を 右クリック します。

  6. Debug As > Mule Application を選択します。

    module9 lab3 as debugger start

    または、APIプロジェクトキャンバス上で 右クリック して、以下のように Debug project を選択することもできます。

    module9 lab3 as debugstart
    Anypoint Studioは、アプリケーションを組み込みMuleランタイムにデプロイしました。 別のMuleサーバー環境にデプロイする必要はありません。 開発者は、共有開発環境や上位環境にデプロイできるようになるまで、アプリケーションをローカルで開発してテストすることができます。
  7. Mule Debugパースペクティブに切り替えるように促されます。ここで Yes ボタンを 押して ください。

    module9 lab3 as debugger alert

    これで、Mule Debug パースペクティブに入りました。このパースペクティブでは多くのビューを見ることができます。

    module9 lab3 as debugscreen
  8. 右下の APIKit Console リンクを使ってアプリケーションをテストします。Open console ボタンをクリックするとAPI Consoleのブラウザウィンドウが開きます。コンソールはブラウザで以下のように見えます。

    module9 lab1 as apiconsole
  9. POST リンクを クリック します。 これで、Create an Order(POST) メソッドを使用して Orders resource(/orders)をテストすることができます。 このページの Parameters, Headers, と Body タブの内容を確認してください。

    module9 lab1 as apiconsole post
  10. リクエストの本文は、Body タブに表示されている事前に設定されたペイロードであることを確認して下さい。 このペイロード内には、前に定義した SOAP リクエストへのマッピングに使用される customerId があります。 SEND リンクを クリック します。

    module9 lab1 as apiconsole tryit

    Acceptフィールドに `application/json`と入力されていることを確認してください。

  11. Studioの Muleフロー画面 で最初の ブレークポイント が点線でハイライトされます。

    module9 lab3 as debugbreakpoint3

    Mule Debugger タブのプロパティで、メッセージの詳細を確認することもできます。

    module9 lab3 as debugdetails

    next processor ボタン(上の赤い矢印を参照)を 押す と、フローの次の プロセッサ にメッセージが移動します。 前述したように、これはフローがメッセージとその内容をどのように扱うかをステップバイステップで確認するのに良い方法です。 デバッガの使用方法の詳細については、後述のリンクを確認してください。

  12. リクエストが成功した場合、以下のような resource created レスポンスの 201 が表示されるはずです。 これはモッキングサービスのレスポンスではなく、ローカルのMuleランタイムサーバーにデプロイされたライブアプリケーションであることを確認して下さい。 あなたの環境で実行されている POST flow のエンドツーエンド API実装のテストを実行しました。

    module9 lab1 as postresponse
  13. コンソールタブに移動し、赤いボタンを押してMuleランタイムサーバーを停止させます。

Exchangeから完全なプロジェクトをダウンロードすることができます。

まとめ

以下の手順を完了しました:

  • Anypoint Studio からMuleアプリを実行。

  • SOAP Web サービスのエンドポイントを使用して、オーダーを作成する Order Create メソッド をテスト。

  • デバッガ を使用して、メッセージの確認とトラブルシューティングを目的としたアプリケーション・フローを横断するメッセージを確認。

さらに学習するには:

おめでとうございます! モジュール9の最後のラボであるラボ3が完了しました。

モジュール 10 に進んでください。

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