---
schema_version: "1"
id: faae2abb055803898292f7e839b9b635abc961980d1c730b16beff29b388fcc7
title: Mule 3 to Mule 4 Cheat Sheet
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/mule-runtime/4.3/migration-cheat-sheet.md
canonical_url: https://docs.mulesoft.com/mule-runtime/4.3/migration-cheat-sheet
source_site: docs.mulesoft.com
content_type: documentation
content_hash: e8c1ccf7e12d36db222d768abd73b8e210b32a18075a6c704d9ae2024b7f9556
description: MuleSoft Documentation Site
release: "4.3"
latest: false
---
---
product: Mule Runtime
version: 4.3
---

# Mule 3 to Mule 4 Cheat Sheet

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

To help you move from Mule 3 to Mule 4, we built this index to help you find the Mule 4 equivalent
of the most common Mule 3 use cases.

**IMPORTANT:** Keep in mind that this index is only intended to act as a quick entry to the most
common migration scenarios. It doesn’t contain the entire migration guide. For the full set of
migration articles, please visit our Mule [Mule 4 for Mule 3 Users](https://docs.mulesoft.com/mule-runtime/4.3/index-migration) page.

- [Configuration Properties](https://docs.mulesoft.com/mule-runtime/4.3/configuring-properties): There’s a new way of handling configuration
  properties in Mule 4

- [Using Secure Properties](https://docs.mulesoft.com/mule-runtime/4.3/migration-secure-properties-placeholder): Secure placeholders are now a
  Runtime feature and no longer part of the Security Module

- [Using the HTTP Connector](https://docs.mulesoft.com/mule-runtime/4.3/migration-connectors-http): The new HTTP connector has some differences
  with Mule 3, especially when it comes to handling multipart and form requests.

- [From MEL to DataWeave](https://docs.mulesoft.com/mule-runtime/4.3/migration-mel): DataWeave 2.0 is now the expression language. Here’s how
  to adapt your MEL expressions to DataWeave.

- [From DataWeave 1.0 to DataWeave 2.0](https://docs.mulesoft.com/mule-runtime/4.3/migration-dataweave): A new version of DataWeave is
  available in Mule 4

- Where are the explicit transformers?: Transformers like `<object-to-string />` or
  `<object-to-json>` are no longer necessary. Mule handles this automatically under the covers

- [Define a custom Object Store](https://docs.mulesoft.com/object-store-connector/latest/object-store-to-define-a-new-os):
  Custom Object Stores are now defined through the new connector

- [Use watermarks](https://docs.mulesoft.com/mule-runtime/4.3/migration-patterns-watermark): Watermarks have been simplified. You can also do
  it manually now allowing for more complex use cases.

- [Accessing the Mule Message](https://docs.mulesoft.com/mule-runtime/4.3/migration-message-properties): The Mule Message has a new structure
  and it’s accessed differently. Here’s a quick overview.

- Using Java: Interoperability with Java is now done through the
  [Java module](https://docs.mulesoft.com/java-module/latest/). Optionally you can also try the
  [Scripting module](https://docs.mulesoft.com/mule-runtime/4.3/migration-module-scripting) or the [Mule SDK](https://docs.mulesoft.com/mule-sdk/latest/)

- [Using Spring](https://docs.mulesoft.com/mule-runtime/4.3/migration-module-spring): Instead of defining Spring beans directly in your
  application, you can now use the [Spring Module](https://docs.mulesoft.com/spring-module/latest/).

- [Using reconnection strategies](https://docs.mulesoft.com/mule-runtime/4.3/migration-patterns-reconnection-strategies): There are some small
  but important differences around reconnection in Mule 4.

- [Classloading isolation](https://docs.mulesoft.com/mule-runtime/4.3/about-classloading-isolation): Classloading isolation changes the way
  resources and classes are shared. Read this article to learn more.

- [Core Components Migration](https://docs.mulesoft.com/mule-runtime/4.3/migration-core): A comprehensive list of the changes that were made to
  the core language elements

- [Using the new connectors](https://docs.mulesoft.com/mule-runtime/4.3/migration-connectors): A comprehensive list of the changes that were
  made to the main connectors.

- [Using the Security Module (AES)](https://docs.mulesoft.com/mule-runtime/4.3/migration-aes): Anypoint Enterprise Security module was split
  into different modules explained here.

- [Migrating Gateways](https://docs.mulesoft.com/mule-runtime/4.3/migration-api-gateways): This section covers the migration of API Gateway
  related features.

- [Migrating ApiKit apps](https://docs.mulesoft.com/mule-runtime/4.3/migration-example-complex): Covers the necessary steps to successfully
  migrate APIkit-based applications.

- Migrating custom components: You can use the [Mule SDK](https://docs.mulesoft.com/mule-sdk/latest/) to create your own
  reusable components

- [Transport service overrides](https://docs.mulesoft.com/mule-runtime/4.3/migration-transports): Covers how to migrate from generic
  transports.

- [on-premises::mule-high-availability-ha-clusters.adoc#configure-the-performance-profile](https://docs.mulesoft.com/on-premises/latest/mule-high-availability-ha-clusters#configure-the-performance-profile):
  At a container level, change the property from `mule.clusterPartitioningMode=OPTIMIZE_PERFORMANCE`
  to `mule.cluster.storeprofile=performance`. At an individual application level, you can configure
  the store profile for a specific Mule application.
