チュートリアル: Object Store v2 からのデータの保存と取得

このチュートリアルを使用して、Object Store v2 によるデータの保存と表示を開始します。

シリアル化可能なデータはすべてキー-値ペアとしてオブジェクトストアに送信できます。

このチュートリアルでは、Design Center と Anypoint Studio で 1 つずつ、合計 2 つのアプリケーションを作成します。

  1. アプリケーションで、オブジェクトストア用 Anypoint Connector (Object Store Connector) を設定します。

  2. オブジェクトストアにデータを送信します。

  3. Runtime Manager でデータを表示します。

使用する Mule バージョンに応じて Studio 7 (Mule 4) または Studio 6 (Mule 3) にアプリケーションを作成します。

前提条件

  • Anypoint Studio、Anypoint Platform、Runtime Manager の知識を持っていること。

  • Anypoint Platform アカウント

    Anypoint Platform のログイン情報がない場合は、Anypoint Platform のサインインページで ​[Sign Up (サインアップ)]​ をクリックしてください。

  • Anypoint Platform の ​[Access Management (アクセス管理)] > [Environments (環境)]​ 環境で設定済みの [Design (設計)] 環境。

    [Access Management (アクセス管理)]​ が表示されない場合は、サイト管理者にお問い合わせください。

  • システムにインストール済みの Anypoint Studio:

  • テスト用の curl​ コマンド

    このチュートリアルでは、[HTTP Listener (HTTP リスナー)] トリガーを使用して Object Store Connector へのアクセスを開始し、​curl​ コマンドを使用して JSON データを Mule アプリケーションに送信します。

    curl​ の代わりに Postman などのブラウザープラグインを使用することもできます。

Design Center を使用する前に、ブラウザーで LastPass や Okta などのパスワードプログラムを無効にします。 有効になっている場合、パスワードプログラムが Design Center の項目にパスワードを挿入するため、アプリケーションが失敗する可能性があります。

Design Center でのオブジェクトストアを使用したアプリケーションの作成

Design Center を使用して、[HTTP Listener (HTTP リスナー)] トリガーと Object Store Connector を含むアプリケーションを設定します。 その後、​curl​ コマンドを使用してキーと値を送信し、Runtime Manager でキーを表示できます。

Design Center でアプリケーションを設定する手順は、次のとおりです。

  1. Anypoint Platform​ の左側のナビゲーションバーまたはメイン画面で ​[Design Center]​ をクリックします。

  2. [Create new (新規作成)]​ > ​[Create new application (新規アプリケーションの作成)]​ をクリックします。

    [Create new application (新規アプリケーションの作成)] オプション
    Figure 1. 矢印は、​[Create new application (新規アプリケーションの作成)]​ オプションを示しています。
  3. [New Mule Application (新規 Mule アプリケーション)]​ ウィンドウで、プロジェクト名に ​osv2demo​ と入力し、​[Create (作成)]​ をクリックします。

  4. ウィザードで、​[Go straight to canvas (キャンバスに直接移動)]​ をクリックします。

    [Go straight to canvas (キャンバスに直接移動)] オプション
    Figure 2. 矢印は、​[Go straight to canvas (キャンバスに直接移動)]​ オプションを示しています。
  5. [Trigger (トリガー)]​ をクリックし、​H​ と入力して「HTTP Listener」 (HTTP リスナー) を検索します。

    [HTTP Listener (HTTP リスナー)] の検索
    Figure 3. 矢印は、​[HTTP Listener (HTTP リスナー)]​ を示しています。
  6. [HTTP Listener (HTTP リスナー)]​ を開きます。

  7. [HTTP Listener (HTTP リスナー)]​ ウィンドウで、​[Path (パス)]​ の値を ​/store​ に設定し、​[Close (閉じる)]​ ボタン (X) をクリックします。

    [Path (パス)] の値と [Close (閉じる)] ボタン (X)
    Figure 4. このスクリーンショットは、(​1​) ​[Path (パス)]​ の値と (​2​) [Close (閉じる)] ボタン (​X​) を示しています。

    [HTTP Listener (HTTP リスナー)] のデフォルト設定は適切であるため、​[Edit (編集)]​ をクリックする必要はありません。

  8. [HTTP Listener (HTTP リスナー)] トリガーの右にあるプラスアイコン (​+​) をクリックします。

    プラスアイコン
    Figure 5. 矢印は、プラスアイコン (+) を示しています。
  9. [Select a component (コンポーネントを選択)]​ ウィンドウで、​ob​ と入力し、[ObjectStore Connector] を検索します。

    ObjectStore Connector を検索する
    Figure 6. 矢印は、ObjectStore Connector を示しています。
  10. コネクタをクリックしてから ​Store​ 操作をクリックします。

    Store 操作
    Figure 7. 矢印は、​Store​ 操作を示しています。
  11. [Configuration (設定)]​ タブの ​[Key (キー)]​ 項目で ​#[payload.key]​ を指定し、​[Value (値)]​ 項目で ​payload.value​ を指定します。

    Store 操作の [Key (キー)] 項目と [Value (値)] 項目
    Figure 8. このスクリーンショットは、(​1​) ​[Key (キー)]​ 項目と (​2​) ​[Value (値)]​ 項目を示しています。

    キーの最大サイズは 1024 バイトです (UTF-8 エンコード)。

    Object Store v2 では、キーでのパイプ (​|​) 文字の使用はサポートされていません。

  12. [Test (テスト)]​ をクリックして、一時的な場所でアプリケーションを実行します。

    アプリケーションが一時的な環境で実行を開始します。

    一時的な環境で実行されている osv2demo アプリケーション
    Figure 9. 矢印は、​osv2demo​ アプリケーションが一時的な環境で実行されていることを示すメッセージを示しています。

Design Center を使用して、オブジェクトストアを持つアプリケーションを正常に設定し、一時的な環境にデプロイしました。

次に、REST API コマンドを Object Store API に送信し、Runtime Manager を使用して結果を表示することで、接続をテストします。

Design Center アプリケーションのテスト

Design Center でアプリケーションを作成したら、​curl​ コマンドを使用して REST API コマンドを Object Store API に送信し、Runtime Manager を使用して結果を表示することで、アプリケーションをテストします。

アプリケーションをテストする手順は、次のとおりです。

  1. コピーアイコンをクリックして、デプロイメント URL をコピーします。

    デプロイメント URL のコピーアイコン
    Figure 10. 矢印は、デプロイメント URL のコピーアイコンを示しています。
  2. コマンドラインで ​curl​ コマンドを実行して、キー-値ペアをオブジェクトストアに送信します。​DEPLOYMENT-URL​ には、Design Center からコピーしたデプロイメント URL を指定してください。

    curl -X POST \
      "http://DEPLOYMENT-URL/store"
      -H "Content-Type: application/json"
      -d '{ "key": "myKey", "value": "OSv2 Test" }'

    このコマンドの出力は次のようになります。

    { "key": "myKey", "value": "OSv2 Test" }
  3. 右上隅の ​[…​]​ メニューから ​[View in Runtime Manager (Runtime Manager で表示)]​ を選択します。

    [View in Runtime Manager (Runtime Manager で表示)] メニューオプション
    Figure 11. 矢印は、Design Center の ​[…​]​ メニューと ​[View in Runtime Manager (Runtime Manager で表示)]​ オプションを示しています。
  4. Runtime Manager​ の左側のナビゲーションペインで ​[Object Store (オブジェクトストア)]​ をクリックします。

  5. オブジェクトストア、パーティション、そしてキーをクリックします。

    Runtime Manager のオブジェクトストアのキーと値
    Figure 12. このスクリーンショットは、(​1​) オブジェクトストア、(​2​) キー、(​3​) オブジェクトストアの値を示しています。

    curl​ から送信した ​myKey​ キーが ​[binary value] BINARY​ の値でオブジェクトストアに表示されているのがわかります。

    curl​ から送信した ​myKey​ キーが ​[binary value] BINARY​ の値でオブジェクトストアに表示されています。 この値はバイナリです。これは、Mule 4 では値を Mule オブジェクトでラップして、Anypoint Platform で値がバイナリでのみ表示されるようにするためです。

curl​ コマンドを使用してキー-値ペアをオブジェクトストアに格納し、Runtime Manager で結果を表示しました。

値が正しいことを検証するには、Design Center に戻り、値を取得するための新しいフローを追加します。

値を取得するフローを作成する

'myKey` の値を取得するための新しいフローを作成する方法:

  1. Design Center の左側にある ​[Project (プロジェクト)]​ 領域で ​[Flows (フロー)]​ メニューを展開します。

  2. 3 つのドットのメニューから ​[Rename (名前変更)]​ を選択し、既存のフロー名を ​New Flow​ から ​Store​ に変更します。

    3 つのドットのメニューと [Rename (名前変更)] オプション
    Figure 13. このスクリーンショットは、(​1​) HTTP Connector と (​2​) ​[Rename (名前変更)]​ オプションを示しています。
  3. [Flows (フロー)]​ の右にあるプラス記号をクリックします。

  4. ウィザードで、​[Go straight to canvas (キャンバスに直接移動)]​ をクリックします。

    [Go straight to canvas (キャンバスに直接移動)] オプション
    Figure 14. 矢印は、​[Go straight to canvas (キャンバスに直接移動)]​ オプションを示しています。
  5. [Trigger (トリガー)]​ ボックスをクリックし、​H​ と入力して「HTTP Listener」 (HTTP リスナー) を検索します。

    [HTTP Listener (HTTP リスナー)] の検索
    Figure 15. 矢印は、[HTTP Listener (HTTP リスナー)] を示しています。
  6. [HTTP Listener (HTTP リスナー)]​ を開きます。

  7. [HTTP Listener (HTTP リスナー)]​ ウィンドウで、​[Path (パス)]​ の値を ​/retrieve​ に設定し、​[Close (閉じる)]​ ボタン (X) をクリックします。

    [Path (パス)] の値と [Close (閉じる)] ボタン (X)
    Figure 16. このスクリーンショットは、(​1​) ​[Path (パス)]​ の値と (​2​) [Close (閉じる)] ボタン (​X​) を示しています。

    [HTTP Listener (HTTP リスナー)] のデフォルト設定は適切であるため、​[Edit (編集)]​ をクリックする必要はありません。

  8. この新しいフローの名前を ​Retrieve​ に変更します。

  9. [HTTP Listener (HTTP リスナー)] トリガーの右にあるプラスアイコン (+) をクリックして Object Store Connector を追加します。

  10. [Select a component (コンポーネントを選択)]​ ウィンドウで、​ob​ と入力し、[ObjectStore Connector] を検索します。

    Object Store Connector を検索する
    Figure 17. 矢印は、ObjectStore Connector を示しています。
  11. コネクタをクリックしてから ​Retrieve​ 操作をクリックします。

  12. [Configuration (設定)]​ タブの ​[Key (キー)]​ 項目で ​#[attributes.queryParams.key]​ を指定します。

    Retrieve 操作の [Key (キー)] 項目
    Figure 18. 矢印は、​[Retrieve]​ 設定の ​[Key (キー)]​ 項目を示しています。
  13. [Test (テスト)]​ をクリックして、一時的な場所でアプリケーションを実行します。

  14. コピーアイコンをクリックして、デプロイメント URL をコピーします。

    デプロイメント URL のコピーアイコン
    Figure 19. 矢印は、デプロイメント URL のコピーアイコンを示しています。
  15. コマンドラインで次の ​curl​ コマンドを実行してキーを取得します。​DEPLOYMENT-URL​ には、Design Center からコピーしたデプロイメント URL を指定してください。

    curl http://DEPLOYMENT-URL/retrieve?key=myKey;echo

    このコマンドの出力では、​myKey​ の値が表示されます。

    "OSv2 Test"

curl​ コマンドで REST API コマンドを Object Store API に送信して結果を取得することで、アプリケーションを正常にテストしました。

次に、Anypoint Studio 7 で Mule アプリケーションを作成してオブジェクトストアを追加します。

Anypoint Studio 7 でのオブジェクトストアを持つ Mule 4 アプリケーションの作成

Anypoint Studio 7 を使用して、Design Center で作成したアプリケーションと同様の Mule 4 アプリケーションを作成できるようになりました。

まず、Studio 7 を使用して、[HTTP Listener (HTTP リスナー)] トリガーと Object Store Connector を含むアプリケーションを設定します。 その後、アプリケーションを CloudHub にデプロイし、​curl​ コマンドを使用してキーと値を送信し、Runtime Manager でキーを表示します。

Studio 7 で Mule 4 アプリケーションを設定する手順は、次のとおりです。

  1. Studio を開始し、​[File (ファイル)]​ > ​[New (新規)]​ > ​[Mule Project (Mule プロジェクト)]​ をクリックし、プロジェクトに ​osv2-demo​ という名前を付けて、​[Finish (完了)]​ をクリックします。

  2. Object Store Connector をインストールします。

    1. ツールバーの ​[Exchange (エクスチェンジ)]​ アイコンをクリックします。

      Studio 7 ツールバーの [Exchange (エクスチェンジ)] アイコン
      Figure 20. 矢印は、Studio 7 ツールバーの ​[Exchange (エクスチェンジ)]​ アイコンを示しています。
    2. パスワードの入力を促されたら、Anypoint Platform のユーザー名とパスワードを入力します。

    3. Exchange で、​[Provided by MuleSoft (MuleSoft による提供)]​ を選択し、[ObjectStore Connector] を検索します。

      Exchange の [Provided by MuleSoft (MuleSoft による提供)] オプションと検索項目
      Figure 21. このスクリーンショットは、(​1​) ​[Provided by MuleSoft (MuleSoft による提供)]​ オプションと (​2​) 検索項目を示しています。
    4. [ObjectStore Connector - Mule 4]​ を選択します。

    5. [Add to project (プロジェクトに追加)]​ をクリックします。

      Exchange の [Add to project (プロジェクトに追加)] アイコン
      Figure 22. 矢印は、Exchange の ​[Add to project (プロジェクトに追加)]​ アイコンを示しています。
    6. 確認ダイアログで ​[Proceed (続行)]​ をクリックし、​[OK]​ をクリックします。

  3. [Mule Palette (Mule パレット)]​ ビューで ​[HTTP]​ をクリックし、​[Listener]​ を Studio キャンバスにドラッグします。

    [Mule Palette (Mule パレット)] ビューの HTTP Connector と Listener 操作
    Figure 23. このスクリーンショットは、(​1​) HTTP Connector と (​2​) Listener 操作を示しています。
  4. [ObjectStore]​ をクリックして ​[Store]​ をキャンバスの ​[Listener]​ の右側までドラッグします。

    Studio 7 キャンバスの [Store] 操作
    Figure 24. 矢印は、Studio 7 キャンバスの ​[Store]​ 操作を示しています。
  5. キャンバスで ​[Listener]​ をクリックします。

  6. [Listener]​ プロパティウィンドウで、​[General (一般)] > [Path (パス)]​ を ​/store​ に設定します。

  7. [Connector configuration (コネクタ設定)]​ 項目の右にある緑のプラスアイコン (+) をクリックします。

  8. HTTP リスナーの ​[Global Element Properties (グローバル要素のプロパティ)]​ ウィンドウで、​[Host (ホスト)]​ が ​0.0.0.0​ に設定され、​[Port (ポート)]​ が ​8081​ に設定されていることを確認し、​[OK]​ をクリックします。

    [Listener]​ プロパティウィンドウに、エラーがないことが示されます。

    [Listener] プロパティ
    Figure 25. このスクリーンショットは、Listener 操作の (​1​) ​[Path (パス)]​ プロパティと (​2​) ​[Connector configuration (コネクタ設定)]​ アイコンを示しています。
  9. キャンバスで ​Store​ 操作をクリックします。

  10. [Store]​ プロパティウィンドウの ​[Key (キー)]​ 項目で ​#[payload.key]​ を指定し、​[Value (値)]​ 項目で ​payload.value​ を指定します。

    Store 操作の [Key (キー)] 項目と [Value (値)] 項目
    Figure 26. このスクリーンショットは、Store 操作の (​1​) ​[Key (キー)]​ 項目と (​2​) ​[Value (値)]​ 項目を示しています。

    キーの最大文字数は 256 です。

    Object Store v2 では、キーでのパイプ (​|​) 文字の使用はサポートされていません。

  11. フローを選択し、プロパティウィンドウで名前を ​Store​ に変更します。

    [Store] フロープロパティウィンドウの [Name (名前)] 項目
    Figure 27. 矢印は、​[Store]​ フロープロパティウィンドウの ​[Name (名前)]​ 項目を示しています。
  12. [Mule Palette (Mule パレット)]​ ビューで ​[HTTP]​ をクリックし、別の ​[Listener]​ をキャンバスの最初のフローの下までドラッグします。

  13. [ObjectStore]​ をクリックして ​[Retrieve]​ を 2 番目のフローの ​[Listener]​ の右側までドラッグします。

  14. キャンバスで ​[Listener]​ をクリックします。

  15. [Listener]​ プロパティウィンドウで、​[General (一般)] > [Path (パス)]​ を ​/retrieve​ に設定します。

  16. [Connector configuration (コネクタ設定)]​ メニューで、Store フローの Listener 操作に対してセットアップしたのと同じ ​HTTP_Listener_config​ オプションを選択します。

    [Listener] プロパティウィンドウの [Connector configuration (コネクタ設定)] メニュー
    Figure 28. 矢印は、​[Listener]​ プロパティウィンドウの ​[Connector configuration (コネクタ設定)]​ メニューを示しています。
  17. キャンバスで ​Retrieve​ 操作をクリックします。

  18. [Retrieve]​ プロパティウィンドウの ​[Key (キー)]​ 項目に ​#[attributes.queryParams.key]​ と指定します。

    Retrieve 操作の [Key (キー)] 項目
    Figure 29. 矢印は、​[Retrieve]​ プロパティウィンドウの ​[Key (キー)]​ 項目を示しています。
  19. 2 番目のフローを選択し、プロパティウィンドウで名前を ​Retrieve​ に変更します。

    完了すると、フローは次のようになります。

    Studio の Store フローと Retrieve フロー
    Figure 30. このスクリーンショットは、(​1​) ​[Store]​ フローと (​2​) ​[Retrieve]​ フローを示しています。
  20. Studio の ​Package Explorer​ で、​osv2-demo​ を右クリックし、​[Anypoint Platform]​ > ​[Deploy to CloudHub (CloudHub にデプロイ)]​ を選択します。

  21. 確認ダイアログで、アプリケーションのデプロイ先の環境を選択します。

  22. Anypoint Platform の ​[Deploying Application (アプリケーションのデプロイ)]​ ウィンドウで ​[Deploy Application (アプリケーションをデプロイ)]​ をクリックします。

    [Deploying Application (アプリケーションのデプロイ)] ページの [Deploy Application (アプリケーションをデプロイ)] ボタン
    Figure 31. 矢印は、​[Deploying Application (アプリケーションのデプロイ)]​ ページの ​[Deploy Application (アプリケーションをデプロイ)]​ ボタンを示しています。
  23. [Open in Browser (ブラウザーで開く)]​ をクリックして、Runtime Manager でアプリケーションを表示します。

    CloudHub で権限エラーが表示された場合は、デプロイ先として別の環境を選択してください。

Studio 7 を使用して、オブジェクトストアを持つアプリケーションを正常に設定しました。 次に、REST API コマンドを Object Store API に送信し、Runtime Manager を使用して結果を表示することで、接続をテストします。

Studio 7 アプリケーションをテストする

Studio 7 でアプリケーションを作成したら、​curl​ コマンドを使用して REST API コマンドを Object Store API に送信し、Runtime Manager を使用して結果を表示します。

アプリケーションをテストする手順は、次のとおりです。

  1. [Runtime Manager] で ​[Applications (アプリケーション)]​ をクリックし、​osv2-demo​ アプリケーションが実行されていることを確認します。

  2. osv2-demo​ アプリケーションの ​[Status (状況)]​ 列をクリックし、その詳細を右側のペインに表示します。

  3. [App url (アプリケーション URL)]​ の値をコピーします。

    Runtime Manager の [App url (アプリケーション URL)]
    Figure 32. 矢印は、Runtime Manager 内の詳細ペインの ​[App url (アプリケーション URL)]​ を示しています。
  4. コマンドラインで次の ​curl​ コマンドを実行します。​APP-URL​ には、Runtime Manager からコピーした​アプリケーション URL​ を指定してください。

    $ curl -X POST -H "Content-Type: application/json" -d '{ "key": "myKey", "value": "OSv2 Test" }' "http://APP-URL/store";echo

    このコマンドからの出力には、オブジェクトストアに送信したキー-値ペアが表示されます。

    { "key": "myKey", "value": "OSv2 Test" }
  5. Runtime Manager のアプリケーションの詳細ペインで ​[Manage application (アプリケーションを管理)]​ をクリックします。

    詳細ペインでのアプリケーションの管理
    Figure 33. 矢印は、Runtime Manager 内の詳細ペインの ​[Manage application (アプリケーションを管理)]​ を示しています。
  6. 左側のナビゲーションペインで ​[Object Store (オブジェクトストア)]​ をクリックします。

  7. オブジェクトストア、パーティション、そしてキーをクリックします。

    Runtime Manager の [Object Store (オブジェクトストア)] オプション、キー、値
    Figure 34. このスクリーンショットは、(​1​) ​[Object Store (オブジェクトストア)]​ オプション、(​2​) キー、(​3​) オブジェクトストアの値を示しています。

    curl​ から送信した ​myKey​ キーが ​[binary value] BINARY​ の値でオブジェクトストアに表示されています。 この値はバイナリです。これは、Mule 4 では値を Mule オブジェクトでラップして、Anypoint Platform で値がバイナリでのみ表示されるようにするためです。

  8. コマンドラインで次の ​curl​ コマンドを実行してキーの値を表示します。​APP-URL​ には、Runtime Manager からコピーした​アプリケーション URL​ を指定してください。

    curl http://APP-URL/retrieve?key=myKey;echo

    このコマンドの出力では、キーの値が表示されます。

    "OSv2 Test"

curl​ コマンドを使用してキー-値ペアをオブジェクトストアに格納し、キー-値ペアを取得して、Runtime Manager で結果を表示しました。

Studio 7 XML

Studio 7 で XML を使用して ​osv2-demo​ アプリケーションを作成するには、Studio で ​[Configuration XML (設定 XML)]​ タブをクリックし、XML を以下と比較して、必要に応じて修正を行います。

<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:os="http://www.mulesoft.org/schema/mule/os" xmlns:http="http://www.mulesoft.org/schema/mule/http"
	xmlns="http://www.mulesoft.org/schema/mule/core"
	xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/os http://www.mulesoft.org/schema/mule/os/current/mule-os.xsd">
	<http:listener-config name="HTTP_Listener_config" doc:name="HTTP Listener config" doc:id="24b76402-e396-4228-a48e-fcd9ac651488" >
		<http:listener-connection host="0.0.0.0" port="8081" />
	</http:listener-config>
	<flow name="Store" doc:id="e7d253f9-534b-41df-a189-de815a42facb" >
		<http:listener doc:name="Listener" doc:id="805c84ec-35d4-4753-846b-49b108044df7" config-ref="HTTP_Listener_config" path="/store"/>
		<os:store doc:name="Store" doc:id="d4800501-0fa8-4472-a23e-5213f04155e8" key="#[payload.key]">
			<os:value ><![CDATA[#[payload.value]]]></os:value>
		</os:store>
	</flow>
	<flow name="Retrieve" doc:id="1db04ffc-76c1-48b4-ba33-57807a6404a8" >
		<http:listener doc:name="Listener" doc:id="faed2a0f-3005-4244-a6c6-77407b34d53a" path="/retrieve" config-ref="HTTP_Listener_config"/>
		<os:retrieve doc:name="Retrieve" doc:id="3f907cfc-59e5-49cd-879a-7b2675d488a5" key="#[attributes.queryParams.key]">
		</os:retrieve>
	</flow>
</mule>

Anypoint Studio 6 でのオブジェクトストアを持つ Mule 3 アプリケーションの作成

Anypoint Studio 6 を使用して、Design Center で作成したアプリケーションと同様の Mule 3 アプリケーションを作成できます。 まず、Studio を使用して、Object Store Connector を含むアプリケーションを設定します。 その後、アプリケーションを CloudHub にデプロイし、​curl​ コマンドを使用してキーと値を送信し、Runtime Manager でキーを表示します。

Studio 6 で Mule 3 アプリケーションを設定する手順は、次のとおりです。

  1. Studio を開始し、​[File (ファイル)]​ > ​[New (新規)]​ > ​[Mule Project (Mule プロジェクト)]​ をクリックし、プロジェクトに ​osv2-demo-studio-6​ という名前を付けて、​[Finish (完了)]​ をクリックします。

  2. Object Store Connector をインストールします。

    1. ツールバーの ​[Exchange (エクスチェンジ)]​ アイコンをクリックします。

      Studio 6 ツールバーの [Exchange (エクスチェンジ)] アイコン
      Figure 35. 矢印は、Studio 6 ツールバーの ​[Exchange (エクスチェンジ)]​ アイコンを示しています。
    2. パスワードの入力を促されたら、Anypoint Platform のユーザー名とパスワードを入力します。

    3. Exchange で、​[Provided by MuleSoft (MuleSoft による提供)]​ を選択し、[ObjectStore Connector] を検索します。

      Exchange の [Provided by MuleSoft (MuleSoft による提供)] オプションと検索項目
      Figure 36. このスクリーンショットは、(​1​) ​[Provided by MuleSoft (MuleSoft による提供)]​ オプションと (​2​) 検索項目を示しています。
    4. [Object Store Connector - Mule 3]​ を選択します。

    5. [Install (インストール)]​ をクリックします。

      Exchange の [Install (インストール)] アイコン
      Figure 37. 矢印は、Exchange の ​[Install (インストール)]​ アイコンを示しています。
    6. 確認ダイアログで、インストールするアイテムを確認し、​[Next (次へ)]​ を 2 回クリックします。

    7. ライセンス契約に同意して ​[Finish (完了)]​ をクリックします。

    8. 確認ダイアログで、​[Restart Now (今すぐ再起動)]​ をクリックし、コネクタのインストールを終了します。

  3. [Mule Palette (Mule パレット)]​ ビューで以下の操作を行います。

    1. [HTTP]​ を Studio キャンバスにドラッグします。

      [Mule Palette (Mule パレット)] ビューの HTTP Connector
      Figure 38. 矢印は、HTTP Connector を示しています。
    2. string​ を検索し、​[Object to String]​ をキャンバスの ​[HTTP]​ の右側の ​[Process (プロセス)]​ 領域にドラッグします。

    3. json​ を検索し ​[JSON to Object]​ をキャンバスの ​[Object to String]​ の右側にドラッグします。

    4. objects​ を検索し、​[ObjectStore]​ をキャンバスの ​[JSON to Object]​ の右側にドラッグします。

    5. payload​ を検索し ​[Set Payload]​ をキャンバスの ​[ObjectStore]​ の右側にドラッグします。

      フローは次のようになります。

      Studio 6 キャンバス内のフロー
      Figure 39. 矢印は、キャンバス内のフローを示しています。
  4. キャンバスで ​[HTTP]​ をクリックします。

  5. [HTTP]​ プロパティウィンドウで以下を行います。

    1. [Path (パス)]​ を ​/store​ に設定し、​[Allowed Methods (許可されるメソッド)]​ を ​POST​ に設定します。

      curl コマンドを送信するとき、URL で ​/store​ オプションを使用します。 この ​[Allowed Methods (許可されるメソッド)]​ の設定により、​curl​ コマンドはオブジェクトストアへの情報の投稿 (POST) のみが行えます。

    2. [Connector Configuration (コネクタ設定)]​ の右にある緑のプラスアイコン (+) をクリックします。

    3. HTTP Connector の ​[Global Element Properties (グローバル要素のプロパティ)]​ ウィンドウで、​[Host (ホスト)]​ が ​0.0.0.0​ に設定され、​[Port (ポート)]​ が ​8081​ に設定されていることを確認し、​[OK]​ をクリックします。

      これで、​[HTTP]​ プロパティウィンドウは、エラーがないことを示します。

      Studio 6 の HTTP プロパティ
      Figure 40. 矢印は、​[HTTP]​ プロパティウィンドウを示しています。
  6. キャンバスで ​[JSON to Object]​ をクリックし、​[Return Class (リターンクラス)]​ を ​java.util.Map​ に設定します。

    Studio 6 の JSON to Object プロパティ
    Figure 41. 矢印は、​[JSON to Object]​ プロパティウィンドウの ​[Return Class (リターンクラス)]​ 項目を示しています。
  7. キャンバスで ​[ObjectStore]​ をクリックします。

  8. [ObjectStore]​ プロパティウィンドウで以下を行います。

    1. [Operation (操作)]​ を ​Store​ に設定し、次のように Store 操作値を設定します。

      • [Key (キー)]​ を ​#[payload.key]​ に設定します。

        キーの最大文字数は 256 です。

        Object Store v2 では、キーでのパイプ (​|​) 文字の使用はサポートされていません。

      • [Value Reference (値参照)]​ を ​#[payload.value]​ に設定します。

    2. [Connector Configuration (コネクタ設定)]​ の右にある緑のプラスアイコン (+) をクリックします。

    3. ObjectStore Connector の ​[Global Element Properties (グローバル要素のプロパティ)]​ ウィンドウで、​[Partition (パーティション)]​ を ​myPartition​ に設定し、​[Object Store Reference (オブジェクトストア参照)]​ を ​_defaultUserObjectStore​ に設定してから、​[OK]​ をクリックします。

      [Global Element Properties (グローバル要素のプロパティ)] ウィンドウの [Partition (パーティション)] 項目と [Object Store Reference (オブジェクトストア参照)] 項目
      Figure 42. このスクリーンショットは、​[Global Element Properties (グローバル要素のプロパティ)]​ ウィンドウの (​1​) ​[Partition (パーティション)]​ 項目と (​2​) ​[Object Store Reference (オブジェクトストア参照)]​ 項目を示しています。
      データを Object Store v2 に保存するには、次のように ​[Object Store Reference (オブジェクトストア参照)]​ 項目を「​_defaultUserObjectStore​」に設定する必要があります。

      これで、​[ObjectStore]​ プロパティウィンドウは、エラーがないことを示します。

      Studio 6 の ObjectStore プロパティ
      Figure 43. 矢印は、​[ObjectStore]​ プロパティウィンドウを示しています。
  9. キャンバスで ​[Set Payload]​ をクリックします。

  10. [Set Payload]​ プロパティウィンドウで、​[Value (値)]​ 項目を次のように設定します。

    KEY: #[payload.key] AND VALUE: #[payload.value] WERE SAVED

    コマンドラインに表示されるこのメッセージは、​curl​ コマンド値がアプリケーションに受信されたことを示します。

    [Set Payload] プロパティウィンドウの [Value (値)] 項目
    Figure 44. 矢印は、​[Set Payload]​ プロパティウィンドウの ​[Value (値)]​ 項目を示しています。
  11. プロジェクトを保存します。

  12. Studio の ​Package Explorer​ で、​osv2-demo-studio-6​ を右クリックし、​[Anypoint Platform]​ > ​[Deploy to Cloud (クラウドにデプロイ)]​ を選択します。

  13. 確認ダイアログで、アプリケーションのデプロイ先の環境を選択します。

  14. Anypoint Platform の ​[Deploying Application (アプリケーションのデプロイ)]​ ウィンドウで、​[Use Object Store v2 (Object Store v2 を使用)]​ が選択されていることを確認して ​[Deploy Application (アプリケーションをデプロイ)]​ をクリックします。

    [Deploying Applications (アプリケーションのデプロイ)] ページの [Deploy Application (アプリケーションをデプロイ)] ボタン
    Figure 45. 矢印は、​[Deploying Applications (アプリケーションのデプロイ)]​ ページの ​[Deploy Application (アプリケーションをデプロイ)]​ ボタンを示しています。
  15. [Open in Browser (ブラウザーで開く)]​ をクリックして、Runtime Manager でアプリケーションを表示します。

    CloudHub で権限エラーが表示された場合は、デプロイ先として別の環境を選択してください。

Studio 6 を使用して、オブジェクトストアを持つ Mule 3 アプリケーションを正常に設定しました。 次に、REST API コマンドを Object Store API に送信し、Runtime Manager を使用して結果を表示することで、接続をテストします。

Studio 6 アプリケーションをテストする

Studio 6 でアプリケーションを作成したら、​curl​ コマンドを使用して REST API コマンドを Object Store API に送信し、Runtime Manager を使用して結果を表示します。

アプリケーションをテストする手順は、次のとおりです。

  1. [Runtime Manager]​ で ​[Applications (アプリケーション)]​ をクリックし、​osv2-demo-studio-6​ アプリケーションが実行されていることを確認します。

  2. osv2-demo-studio-6​ アプリケーションの ​[Status (状況)]​ 列をクリックし、その詳細を右側のペインに表示します。

  3. [App url (アプリケーション URL)]​ の値をコピーします。

    Runtime Manager の [App url (アプリケーション URL)]
    Figure 46. 矢印は、Runtime Manager 内の詳細ペインの ​[App url (アプリケーション URL)]​ を示しています。
  4. コマンドラインで次の ​curl​ コマンドを実行します。​APP-URL​ には、Runtime Manager からコピーした​アプリケーション URL​ を指定してください。

    $ curl -X POST -H "Content-Type: application/json" -d '{ "key": "myStudio6Key", "value": "OSv2 Test from Studio 6" }' "http://APP-URL/store";echo

    このコマンドからの出力には、オブジェクトストアに送信したキー-値ペアが表示されます。

    KEY: myStudio6Key AND VALUE: OSv2 Test from Studio 6 WERE SAVED

    このコマンドを送信するたびに、キーの名前を変更して各キーが一意になるようにします。

  5. Runtime Manager のアプリケーションの詳細ペインで ​[Manage application (アプリケーションを管理)]​ をクリックします。

    詳細ペインでのアプリケーションの管理
    Figure 47. 矢印は、Runtime Manager 内の詳細ペインの ​[Manage application (アプリケーションを管理)]​ を示しています。
  6. 左側のナビゲーションペインで ​[Object Store (オブジェクトストア)]​ をクリックします。

  7. オブジェクトストア、パーティション、そしてキーをクリックします。

    Runtime Manager の [Object Store (オブジェクトストア)] タブ、キー、値
    Figure 48. このスクリーンショットは、(​1​) ​[Object Store (オブジェクトストア)]​ タブ、(​2​) キー、(​3​) オブジェクトストアの値を示しています。
  8. […​]​ アイコンにマウスポインターを置いて、各オブジェクトのアクションを表示します。

    os tutorial rtm os actions 3
    Figure 49. このスクリーンショットは、オブジェクトストアの (​1​) ​メタデータ​と (​2​) ​[Delete Value (値を削除)]​ アクションを示しています。
    • オブジェクトストア、パーティション、キー、または値を削除するには、​[…​]​ アイコンにマウスポインターを置いて、ごみ箱アイコンをクリックします。

    • キーの値と、値に関連付けられているメタデータを表示するには、​[…​]​ アイコンにマウスポインターを置いて、メタデータ箱アイコンをクリックします。