定義済み変数

DataWeave 式は、さまざまな Mule Runtime Engine オブジェクトから値を取得できる変数を受け入れます。 開始する前に、Mule 4 アプリケーションでは DataWeave のバージョン 2.x が使用されることに注意してください。Mule 3 アプリケーションでの DataWeave については、​DataWeave バージョン 1.2 のドキュメント​を参照してください。 他の Mule バージョンの場合は、DataWeave の目次のバージョンセレクターを使用できます。

よく使用される変数として、Mule イベントの主要部分である ​attributes​、​payload​、​vars​ などがあります。

変数 説明 項目と例

app

コンテキストの Mule アイテム。

  • 項目:

    • encoding​ (エンコード): Mule メッセージプロセッサーで使用されるエンコード。

    • name​ (名前): プロジェクトおよび Mule アプリケーションの名前。

    • standalone​ (スタンドアロン): true​ または ​false​ を返します。

    • workDir​ (作業ディレクトリ): Mule アプリケーションの作業ディレクトリ。Studio の場合、これは Eclipse プラグインディレクトリです。

    • registry​ (レジストリ): Mule レジストリエントリのマップ。

  • 例: #[app.encoding]​ は ​UTF-8​ などを返します。

attributes

Mule メッセージオブジェクト (​message​) の属性 (メタデータ)。

  • 項目: メッセージ種別に応じて異なります (HTTP Request 属性など)。

  • 例: #[attributes]​ はメッセージ属性を返します。HTTP 要求の場合、​#[attributes.header]​ では HTTP ヘッダーメタデータが返されます。​#[attributes.version]​ では ​HTTP/1.1​ が返される場合があります。

authentication

認証情報へのアクセスを提供します。

  • 項目:

    • principal​ (主体): 認証の主要部分 (ユーザーやオブジェクトなど)。

    • credentials​ (ログイン情報): 認証のログイン情報。

    • properties​ (プロパティ): 認証のプロパティのマップ。

  • 例: #[authentication.principal]

correlationId

処理されるメッセージの ​correlationId​ (相関 ID)。

  • 項目: 項目はありません。

  • 例: #[correlationId]​ は ​0-f77404d0-e699-11e7-a217-38c9864c2f8f​ などを返します。

dataType

メッセージペイロードのデータ型。

  • 項目: 項目はありません。

  • 例: #[dataType]​ は ​SimpleDataType​ などを返します。

error

Mule メッセージオブジェクトに関連付けられたエラー。

  • 項目:

    • description​ (説明): エラーの簡潔な説明。

    • detailedDescription​ (詳細説明): 詳細な説明を入力できます。

    • failingComponent​: エラーが発生したコンポーネント。

    • errorType​ (エラー種別): エラーの種別。​errorType​ は ​identifier​ と ​namespace​ で構成されます。

    • cause​ (原因): エラーを発生させた内部 Java ​Throwable​。

    • errorMessage​ (エラーメッセージ): (省略可能) 失敗したコンポーネントから出力される Mule メッセージ (HTTP のようなコンポーネントで応答が無効な場合に使用されます)。

    • childErrors​: (省略可能) 内部エラーのリスト (スキャッターギャザーなど、エラーを集約するコンポーネントから出力されます)。

  • 例: #[error.description]

flow

非推奨: 現在のフローの名前。フロー名は静的であるため、この項目は非推奨であり、Logger コンポーネントでのみ使用できます。

  • 項目:

    • name

  • 例: testFlow​ という名前のフロー内で実行されたときに、​#[flow.name]​ は ​testFlow​ を Studio コンソールに返します。

message

処理されるパッケージ (​payload​ (ペイロード) と ​attributes​ (属性))。

  • 項目:

    • payload​ (ペイロード): メッセージペイロード。ペイロードが null の場合は ​null​。

    • dataType​ (データ型): メッセージペイロードのデータ型。

    • attributes​ (属性): メッセージ属性。属性が null の場合は ​null​。

  • 例: #[message]

mule

アプリケーションが現在実行されている Mule インスタンス。

  • 項目:

    • clusterId​ (クラスター ID): Mule Runtime が高可用性クラスターに含まれる場合はクラスターの ID。

    • home​ (ホーム): ホームディレクトリ。

    • nodeId​ (ノード ID): クラスターノード ID。

    • version​ (バージョン): Mule バージョン。

  • 例: #[mule.version]​ は ​4.0.0​ などを返します。

payload

処理中の現在の Mule メッセージオブジェクト (​message​ (メッセージ)) の本文。

  • 項目: 現在のペイロードに応じて異なります。

  • 例: #[payload]​ はメッセージの本文を返します。

server

Mule インスタンスが実行されているオペレーティングシステム。Mule が実行されている物理サーバーと JVM の両方に関する情報を公開します。

  • user.name​ などのシステムプロパティを選択する機能は、使用しているオペレーティングシステムでの JVM の動作によって決まります。

  • 項目:

    • env​ (環境): オペレーティングシステム環境変数のマップ。

    • fileSeparator​ (ファイル区切り文字): ファイルパスのコンポーネントを区切る文字。UNIX では ​/​、Windows では ​\​。

    • host​ (ホスト): サーバーの完全修飾ドメイン名。

    • ip​ (IP): サーバーの IP アドレス。

    • locale​ (ロケール): JRE のデフォルトロケール (​java.util.Locale​)。言語 (​locale.language​)、国 (​locale.country​) で使用できます。

    • javaVendor​ (Java ベンダー): JRE ベンダー名。

    • javaVersion​ (Java バージョン): JRE バージョン。

    • osArch​ (OS アーキテクチャ): オペレーティングシステムアーキテクチャ。

    • osName​ (OS 名): オペレーティングシステム名。

    • osVersion​ (OS バージョン): オペレーティングシステムバージョン。

    • systemProperties​ (システムプロパティ): Java システムプロパティのマップ。

    • timeZone​ (タイムゾーン): JRE のデフォルトタイムゾーン (​java.util.TimeZone​)。

    • tmpDir​ (一時ディレクトリ): JRE で使用する一時ディレクトリ。

    • userDir​ (ユーザーディレクトリ): ユーザーディレクトリ。

    • userHome​ (ユーザーホーム): ユーザーホームディレクトリ。

    • userName​ (ユーザー名): ユーザー名。

  • 例: #[server.osName]​ は ​Mac OS X​ などを返します。

vars

処理中の現在の Mule イベントに現在設定されているすべての変数。

  • 項目: 項目はありません。

  • 例: #[vars.myVar]​ は ​myVar​ の値を返します。