---
schema_version: "1"
id: 567d33281bc542a60fe2735f8956c5a95cf415dc5f3270efb36c78d37a0b5e8f
title: American Flights アプリケーションのデバッグ
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/anypoint-code-builder/tut-af-debug-am-flights.md
canonical_url: https://docs.mulesoft.com/jp/anypoint-code-builder/tut-af-debug-am-flights
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 5c04e76768bc8d07e7d34a303ff9e77c1d20cecfd321dc214f860e689ba50168
description: MuleSoft Documentation Site
latest: true
---
# American Flights アプリケーションのデバッグ

**進行中のベータリリース**​: **クラウド IDE は進行中のベータリリースです**​。ベータ状態での Anypoint Code Builder の使用には、IDE で入手できる、該当するベータサービス契約条件が適用されます。

American Flights のインターフェースと実装をデバッグします。

## [](#始める前に)始める前に

次の手順を実行します。

1. [American Flights API 仕様の設計](https://docs.mulesoft.com/jp/anypoint-code-builder/tut-af-design-am-flights-api)
2. [American Flights プロセスの統合](https://docs.mulesoft.com/jp/anypoint-code-builder/tut-af-integrate-am-flights)
3. [American Flights API 仕様の実装](https://docs.mulesoft.com/jp/anypoint-code-builder/tut-af-implement-am-flights-api)

## [](#コンポーネントを追加する)コンポーネントを追加する

デバッグを容易にするには、Set Variable コンポーネントと Logger コンポーネントを American Flights 実装に追加します。

1. 実装ファイル (​`implementation.xml`​) を開きます。
2. **\[Query Flights (フライトを照会)\]**​ という名前の Database Select 操作 (​`<db:select/>`​) の後に Set Variable コンポーネントを追加します。
    
    設定 XML で次の ​`<set-variable/>`​ 設定を指定します。
    
    ```xml
    <set-variable value="#[payload]"
         doc:name="Set variable Payload"
         variableName="databasePayload" />
    ```
3. Transform コンポーネント (​`<ee:transform>`​) の後に、次の設定を含む Logger コンポーネントを追加します。
    
    ```xml
    <logger doc:name="Log Payload" message="#[
        %dw 2.0
        output application/json
        ---
        payload]" />
    ```
    
    完全な実装 XML 例を表示するには、クリックしてください。
    
    ```xml
    <flow name="getFlights">
        <logger doc:name="Logger" doc:id="ahcnzm" />
        <db:select doc:name="Query Flights" doc:id="pvuqsc" config-ref="Database_Config" >
            <db:sql>
                <![CDATA[Select * FROM american]]>
            </db:sql>
        </db:select>
    
        <set-variable value="#[payload]" doc:name="Set variable Payload"
             variableName="databasePayload" doc:id="vtptsr" />  (1)
    
        <ee:transform doc:name="Transform Message" doc:id="uniqueId" >
            <ee:message >
                <ee:set-payload >
                    <![CDATA[
                    %dw 2.0
                    output application/json
                    ---
                    payload map ( payload01 , indexOfPayload01 ) -> {
                      ID: payload01.ID,
                      code: (payload01.code1 default "") ++ (payload01.code2 default ""),
                      price: payload01.price default 0,
                      departureDate: payload01.takeOffDate as String default "",
                      origin: payload01.fromAirport default "",
                      destination: payload01.toAirport default "",
                      emptySeats: payload01.seatsAvailable default 0,
                      plane: {
                        "type": payload01.planeType default "",
                        totalSeats: payload01.totalSeats default 0
                      }
                    }
                    ]]>
                </ee:set-payload>
            </ee:message>
        </ee:transform>
    
    <logger doc:name="Log Payload" message="#[
        %dw 2.0
        output application/json
        ---
        payload]" /> (2)
    
    </flow>
    ```
    
    <table><tbody><tr><td><i class="conum" data-value="1"></i><b>1</b></td><td>Set Variable コンポーネント</td></tr><tr><td><i class="conum" data-value="2"></i><b>2</b></td><td>Logger コンポーネント</td></tr></tbody></table>
4. [ブレークポイントを追加する](#add-breakpoint)​に進みます。
    
    アプリケーションの実行を一時停止するブレークポイントのセットアップ方法を確認します。

## [](#add-breakpoint)ブレークポイントを追加する

American Flights プロジェクトにブレークポイントを追加する手順は、次のとおりです。

1. American Flights プロジェクトの​_インターフェース_​ (​`interface.xml`​) を開きます。
2. アクティビティバーで ​**\[Run and Debug (実行およびデバッグ)\]**​ アイコンを選択します。
    
    ![コードエディターでインターフェース XML ファイルが開き、\[Run and Debug (実行およびデバッグ)\] アイコンが強調表示されています](_images/run-and-debug.png)
3. インターフェースファイル (​`interface.xml`​) で、​`<flow-ref/>`​ コンポーネントが含まれる行にブレークポイントを追加します。
    
    ![コードエディターでインターフェース XML ファイルが開き、ブレークポイントが有効になっています](/mulesoft/current/ja-jp/anypoint-code-builder/_images/add-breakpoint.png)
    
    または、F9 を使用して行にブレークポイントを追加します。
4. American Flights プロジェクトの実装ファイル (​`implementation.xml`​) を開き、ブレークポイントを ​`<db:select/>`​ および ​`<set-variable/>`​ コンポーネントに追加します。
5. すべてのブレークポイントが ​**\[Breakpoints (ブレークポイント)\]**​ パネルにリストされるようになりました。
    
    ![3 つの有効なブレークポイントが表示されているメニューパネル](/mulesoft/current/ja-jp/anypoint-code-builder/_images/breakpoints-panel.png)
6. [デバッグセッションを開始する](#debug)​に進みます。
    
    デバッグセッションを実行し、アプリケーションの実行中にさまざまなポイントでメッセージと変数を調べます。

## [](#debug)デバッグセッションを開始する

1. **\[Run and Debug (実行およびデバッグ)\]**​ メニューから、​**\[Debug Mule Application (Mule アプリケーションをデバッグ)\]**​ をクリックします。
    
    ![\[Run and Debug (実行およびデバッグ)\] と \[Debug Mule Application (Mule アプリケーションをデバッグ)\] アイコンが両方とも強調表示されています](_images/start-debugging.png)
    
    IDE でアプリケーションがパッケージ化され、新しいターミナルが開きます。このターミナルでアプリケーションを埋め込み Mule Runtime Engine にデプロイします。
    
    ![アプリケーションの状況がデプロイ済みとして表示されているターミナルウィンドウ](/mulesoft/current/ja-jp/anypoint-code-builder/_images/packaged-and-running-terminals.png)
2. [American Flights アプリケーションをテストする](#test)​に進みます。

## [](#test)American Flights アプリケーションをテストする

デバッグセッションが開始されたら、次の手順を実行します。

1. IDE から、コンソールのターミナルウィンドウを開きます。
    
    - デスクトップ IDE で、​**\[View (表示)\]**​ > ​**\[Terminal (ターミナル)\]**​ を選択する。
    - クラウド IDE で、​![](/mulesoft/current/ja-jp/anypoint-code-builder/_images/icon-menu.png)​ (メニュー) アイコンをクリックし、​**\[Terminal (ターミナル)\]**​ > ​**\[New Terminal (新規ターミナル)\]**​ を選択する。
    - いずれかの IDE で、Ctrl キーを押してからバッククォートキー (\`) を押す。
2. ターミナルで ​`curl`​ コマンドを使用して、実装ではなく​_インターフェース_​ (​`interface.xml`​) のリスナーに対して GET 要求を実行します。
    
    ```URI
    curl http://localhost:8081/api/flights
    ```
    
    インターフェースのリスナーの URI にある ​`_//api/flights_`​ に注意してください。この手順の詳細は、​[「フローをトリガーする」](https://docs.mulesoft.com/jp/anypoint-code-builder/int-trigger-flows#trigger-flow)​を参照してください。
3. American Flights プロジェクトの最初のブレークポイントでアプリケーションの実行が停止することを確認します。
    
    ![ブレークポイントでのフローの停止](/mulesoft/current/ja-jp/anypoint-code-builder/_images/debug-stop-at-flow-ref.png)
    
    ブレークポイントはインターフェースファイル (​`interface.xml`​) に配置されています。
4. デバッグツールバーで ​**\[Step Over (ステップオーバー)\]**​ ボタンをクリックして、​`implementation.xml`​ の ​`<db:select/>`​ 要素にある次のブレークポイントまで実行を継続します。
5. **\[Run and Debug (実行およびデバッグ)\]**​ サイドバーの ​**\[Variables (変数)\]**​ パネルにブレークポイントでの Mule イベントに関する情報が提供されていることを確認します。
    
    ![実行が停止する設定 XML ファイルのブレークポイント](/mulesoft/current/ja-jp/anypoint-code-builder/_images/debugger-stop-db-select.png)
6. デバッグツールバーで ​**\[Step Over (ステップオーバー)\]**​ ボタンをクリックして、​`<set-variable/>`​ 要素にある次のブレークポイントまで実行を継続します。
7. **\[Variables (変数)\]**​ パネルで ​**\[Mule Message (Mule メッセージ)\]**​ > ​**\[Payload (ペイロード)\]**​ に移動して、データベース応答がフライトデータの配列になっていることを確認します。
    
    ![ペイロードのフライトデータの配列](/mulesoft/current/ja-jp/anypoint-code-builder/_images/debugger-stop-set-variable.png)
8. [監視式を追加する](#watch)​に進みます。

## [](#watch)監視式を追加する

1. **\[Run and Debug (実行およびデバッグ)\]**​ サイドバーから ​**\[Watch (監視)\]**​ パネルを開きます。
2. パネルの ​**\[+\]**​ アイコンをクリックし、式 ​`payload.^mediaType`​ を追加します。
    
    ![\[Add Expression (式を追加)\] ボタンが強調表示され、アプリケーション変数が表示されているデバッグウィンドウ](_images/debug-add-expression.png)
3. 実行が Transform Message コンポーネント (​`<ee:transform/>`​) に移動するまで ​**\[Step Over (ステップオーバー)\]**​ ボタンをクリックします。
4. ペイロードが ​`application/java`​ であることに注意してください。
    
    !["ペイロード種別「application/java」が表示されている \[Watch (監視)](/mulesoft/current/ja-jp/anypoint-code-builder/_images/tut-debug-mediatype-java.png) パネル"\]
5. Logger コンポーネント (​`<logger>`​) に達するまで引き続き ​**\[Step Over (ステップオーバー)\]**​ ボタンをクリックします。
6. ペイロードが ​`application/json`​ に変換されていることに注意してください。
    
    ![ペイロード種別「application/json」が表示されている \[Watch (監視)\] パネル](_images/tut-debug-mediatype-json.png)
7. デバッグツールバーの ​**\[Continue (続行)\]**​ ボタンをクリックし、アプリケーションがデータベースから REST クライアントまたはブラウザーに応答を返すことを確認します。
    
    完全な実装 XML 例を表示するには、クリックしてください。
    
    ```JSON
    [
        {
            "ID": 1,
            "code": "rree0001",
            "price": 541,
            "departureDate": "2016-01-20T00:00:00",
            "origin": "MUA",
            "destination": "LAX",
            "emptySeats": 0,
            "plane": {
                "type": "Boeing 787",
                "totalSeats": 200
            }
        },
        {
            "ID": 2,
            "code": "eefd0123",
            "price": 300,
            "departureDate": "2016-01-25T00:00:00",
            "origin": "MUA",
            "destination": "CLE",
            "emptySeats": 7,
            "plane": {
                "type": "Boeing 747",
                "totalSeats": 345
            }
        },
        {
            "ID": 3,
            "code": "ffee0192",
            "price": 300,
            "departureDate": "2016-01-20T00:00:00",
            "origin": "MUA",
            "destination": "LAX",
            "emptySeats": 0,
            "plane": {
                "type": "Boeing 777",
                "totalSeats": 300
            }
        },
        {
            "ID": 4,
            "code": "rree1000",
            "price": 200,
            "departureDate": "2016-01-20T00:00:00",
            "origin": "MUA",
            "destination": "CLE",
            "emptySeats": 5,
            "plane": {
                "type": "Boeing 737",
                "totalSeats": 150
            }
        },
        {
            "ID": 5,
            "code": "rree1093",
            "price": 142,
            "departureDate": "2016-02-11T00:00:00",
            "origin": "MUA",
            "destination": "SFO",
            "emptySeats": 1,
            "plane": {
                "type": "Boeing 737",
                "totalSeats": 150
            }
        },
        {
            "ID": 6,
            "code": "ffee1112",
            "price": 954,
            "departureDate": "2016-01-20T00:00:00",
            "origin": "MUA",
            "destination": "CLE",
            "emptySeats": 100,
            "plane": {
                "type": "Boeing 787",
                "totalSeats": 200
            }
        },
        {
            "ID": 7,
            "code": "eefd1994",
            "price": 676,
            "departureDate": "2016-01-01T00:00:00",
            "origin": "MUA",
            "destination": "SFO",
            "emptySeats": 0,
            "plane": {
                "type": "Boeing 777",
                "totalSeats": 300
            }
        },
        {
            "ID": 8,
            "code": "ffee2000",
            "price": 300,
            "departureDate": "2016-02-20T00:00:00",
            "origin": "MUA",
            "destination": "SFO",
            "emptySeats": 30,
            "plane": {
                "type": "Boeing 737",
                "totalSeats": 150
            }
        },
        {
            "ID": 9,
            "code": "eefd3000",
            "price": 900,
            "departureDate": "2016-02-01T00:00:00",
            "origin": "MUA",
            "destination": "SFO",
            "emptySeats": 0,
            "plane": {
                "type": "Boeing 737",
                "totalSeats": 150
            }
        },
        {
            "ID": 10,
            "code": "eefd4511",
            "price": 900,
            "departureDate": "2016-01-15T00:00:00",
            "origin": "MUA",
            "destination": "LAX",
            "emptySeats": 100,
            "plane": {
                "type": "Boeing 777",
                "totalSeats": 300
            }
        },
        {
            "ID": 11,
            "code": "rree4567",
            "price": 456,
            "departureDate": "2016-01-20T00:00:00",
            "origin": "MUA",
            "destination": "SFO",
            "emptySeats": 100,
            "plane": {
                "type": "Boeing 737",
                "totalSeats": 150
            }
        }
    ]
    ```
8. [デバッグセッションを停止する](#stop)​に進みます。

## [](#stop)デバッグセッションを停止する

デバッグセッションを停止する手順は、次のとおりです。

1. デバッグツールバーで ​**\[Stop (停止)\]**​ ボタンをクリックします。
    
    ![デバッグツールバーからのデバッグセッションの停止](/mulesoft/current/ja-jp/anypoint-code-builder/_images/debugger-stop.png)
2. [American Flights アプリケーションのデプロイ](https://docs.mulesoft.com/jp/anypoint-code-builder/tut-af-deploy-am-flights)に進みます。