次のチュートリアルは、インテグレーションを開発し、 Mock Data Generators Library を Exchange からインポートし、カスタムライブラリを使用してライブラリからランダム値を返す方法を示しています。
始める前に
始める前に、次の準備が整っていることを確認します。
-
MuleSoft 環境をセットアップします。
詳細は、Anypoint Code Builder 入門を参照してください。
Mule アプリケーションを作成する
-
Anypoint Code Builder で、Ctrl+shift+p (Mac) または Cmd+shift+p (Windows) を押してコマンドパレットを開き、
「MuleSoft: Develop an Integration」 (MuleSoft: インテグレーションを開発) と入力します。 -
コマンドを選択します。
-
次の値を使用してインテグレーションを設定します。
-
[Project Name (プロジェクト名)] で、*「mock-dw-library」*と入力します。
-
[Project Location (プロジェクトの場所)] で [Browse (参照)] をクリックしてホームディレクトリを選択します。
-
[Create (作成)] で、[Empty Project (空のプロジェクト)] を選択します。
-
Mule Runtime と Java のバージョンを選択します。
サポートされている Mule Runtime と Java バージョンのいずれかを選択できます。IDE は、バージョン設定をプロジェクトの
mule-artifact.json ファイルに保存します。 バージョンサポートと Mule パッチ自動更新については、「Mule と Java バージョンのサポート」を参照してください。 作成するプロジェクトのデフォルトの Mule Runtime バージョンと Java バージョンを設定するには、Mule、Java、コネクタのバージョン設定を参照してください。
-
-
[Create Project (プロジェクトを作成)] をクリックします。
フローを作成する
最初に、ルートパス (/) を公開する HTTP リスナーを使用してフローを設定します。
-
<mule> と </mule> 要素の間に HTTP リスナーグローバル設定を作成します。<http:listener-config name="HTTP_Listener_config" > <http:listener-connection host="0.0.0.0" port="8081" /> </http:listener-config> -
</http:listener-config> 要素の後にフローと HTTP リスナー要素を追加します。<flow name="receive-request" doc:name="Flow" > <http:listener path="/" config-ref="HTTP_Listener_config" doc:name="Listener" doc:id="bbzemf" /> </flow>
DataWeave ライブラリをインポートする
-
Ctrl+Shift+p (Windows) または Cmd+Shift+p (Mac) を押してコマンドパレットを開き、次のコマンドを入力します。
MuleSoft: Import Asset from Exchange -
[DataWeave Library (DataWeave ライブラリ)] を選択します。
-
「DataWeave」の入力を開始して Return キーを押すと、検索に一致するアセットのリストが表示されます。
-
[DataWeave Mock Data Generators Library] を選択します。
-
バージョン 1.0.0 を選択します。
連動関係が正常に追加されたことを示すメッセージが Anypoint Code Builder に表示されます。
DataWeave ライブラリを使用する
-
<http:listener> 要素の後に改行を追加して、Set Payload プロセッサーを作成します。<flow name="receive-request" doc:name="Flow" > <http:listener path="/" config-ref="HTTP_Listener_config" doc:name="Listener" doc:id="bbzemf" /> <set-payload value="#[]" doc:name="Set Payload" doc:id="ee6848" /> </flow> -
次の DataWeave スクリプトを
set-payload 要素の value 要素の内側に追加します。%dw 2.0 output application/json import * from mocks::DataGenerators --- mocks::DataGenerators::randomCity()
XML Code を確認します。
<flow name="receive-request" doc:name="Flow" >
<http:listener path="/" config-ref="HTTP_Listener_config" doc:name="Listener" doc:id="bbzemf" />
<set-payload
doc:name="Set Payload"
value="#[%dw 2.0 output application/json import * from mocks::DataGenerators --- mocks::DataGenerators::randomCity()]"
/>
</flow>
HTTP Connector ライブラリをインポートする
-
Ctrl+Shift+p (Windows) または Cmd+Shift+p (Mac) を押してコマンドパレットを開き、次のコマンドを入力します。
MuleSoft: Import Asset from Exchange -
[Connector] を選択します。
-
「HTTP」の入力を開始して Return キーを押すと、検索に一致するアセットのリストが表示されます。
-
[HTTP Connector - Mule 4] を選択します。
-
最新バージョンを選択します。
連動関係が正常に追加されたことを示すメッセージが Anypoint Code Builder に表示されます。
アプリケーションをデプロイする
-
Ctrl+Shift+p (Windows) または Cmd+Shift+p (Mac) を押してコマンドパレットを開き、次のコマンドを入力します。
MuleSoft: Deploy to CloudHub -
Anypoint Code Builder により、デプロイメント設定ファイルが作成されていることが示され、確認のためにそのファイルが自動的に開きます。
{ "runtime": "4.4.0", (1) "workerSize": 0.1, "applicationName": "mock-dw-library", (2) "workers": 1, "autoStart": true }1 runtime バージョンは、インテグレーションの作成時に選択した Mule Runtime バージョンです。バージョンサポートと Mule パッチ自動更新については、「Mule と Java バージョンのサポート」を参照してください。
2 applicationName プロパティでは、CloudHub のアプリケーションにアクセスするために使用する URL の一部を定義します。この名前は、CloudHub にデプロイされているすべてのアプリケーションで一意である必要があります。
-
デプロイメント設定を確認したら、[Deploy (デプロイ)] を選択してアプリケーションを CloudHub にデプロイします。
-
目的の環境を選択します。
Anypoint Code Builder によりアプリケーションがパッケージ化されて CloudHub にデプロイされます。
-
デプロイメントが完了したら、[Open in Runtime Manager (Runtime Manager で開く)] を選択します。
-
アプリケーションリストからアプリケーションを選択します。
アプリケーションのドメイン名はさまざまですが、mock-dw-library.eu-s1.cloudhub.io などの同様の構造に従います。 -
お気に入りの REST クライアントを開き、Runtime Manager に表示されているドメイン名に対する GET 要求を実行します。
-
これで、エンドポイントに達するたびにアプリケーションでランダムな市区郡が返されるようになりました。