Nav

DataWeave Variables for Mule Runtime

DataWeave expressions accept variables that can retrieve values from a variety of Mule Runtime objects. Commonly used variables include attributes, payload, and vars, the main parts of the Mule event.

Variables Description Fields and Examples

app

The Mule artifact in context.

  • Fields:

    • encoding: Encoding used by the Mule message processor.

    • name: Name of your project and Mule app.

    • standalone: Returns true or false.

    • workDir: Working directory for the Mule app. For Studio, this is an Eclipse plugin directory.

  • Example: #[app.encoding] might return UTF-8.

attributes

Attributes (metadata) of a Mule Message object (message).

  • Fields: Depends on the message type, such as HTTP request attributes.

  • Example: [attributes] returns message attributes. For an HTTP request, [attributes.header] returns HTTP header metadata, and #[attributes.version] might return HTTP/1.1.

authentication

correlationId

The correlationId of the message being processed.

[%hardbreaks] * Fields: No fields. * Example: #[correlationId] might return 0-f77404d0-e699-11e7-a217-38c9864c2f8f.

dataType

Data type of the message payload.

[%hardbreaks] * Fields: No fields. * Example: #[dataType] might return SimpleDataType.

error

Error associated with a Mule message object.

[%hardbreaks]

flow

The name of the current flow.

[%hardbreaks] * Fields: ** name * Example: #[flow.name] will return testFlow when executed within a Flow named testFlow

message

Package (payload and attributes) being processed.

[%hardbreaks] * Fields: payload: The message payload, or null if the payload is null. dataType: The message payload’s data type. ** attributes: The message attributes, or null if the attributes are null.

* Example: #[message]

mule

The Mule instance on which the application is currently running.

[%hardbreaks] * Fields: clusterId: The ID of the cluster when the Mule runtime is part of a High Availability cluster. home: Home directory. nodeId: Cluster Node ID. version: Mule version. * Example: #[mule.version] might return 4.0.0.

payload

The body of the current Mule message object (message) being processed.

[%hardbreaks] * Fields: Depends on the current payload. * Example: #[payload] returns the body of the message.

server

The operating system on which the Mule instance is running. Exposes information about both the physical server and the JVM on which Mule runs.

[%hardbreaks] * Fields: env: Map of operating system environment variables. fileSeparator: Character that separates components of a file path, which is / on UNIX and \ on Windows. host: Fully qualified domain name for the server. ip: IP address of the server. locale: Default locale (java.util.Locale) of the JRE. Can be used language (locale.language), country (locale.country). javaVendor: JRE version javaVersion: JRE vendor name osArch: Operating system architecture. osName: Operating system name. osVersion: Operating system version. systemProperties: Map of Java system properties. timeZone: Default time zone (java.util.TimeZone) of the JRE. tmpDir: Temporary directory for use by the JRE. userDir: User directory. userHome: User home directory. userName: User name. * Example: #[server.osName] might return Mac OS X.

vars

All variables currently set on the current Mule event being processed.