About
This a MuleSoft development course in preparation for the MuleSoft Certified Developer Level 1 (Mule 4) exam. It also prepares the practitioner for the role as a MuleSoft Developer and beyond. Some of the notes are based on my previous undertaking of this course starting from
. I didn’t finish the course then but I am restarting the course now ( ) since I have an exam on .My Strategy
- Todos: add them as you go
- Notes: add them to this page as you go and then revise them, adding connections to other org-roam links and to Anki
- Repeat and perfect
Course details
- Objectives
- Build an application network using API-led connectivity and Anypoint Platform.
- Use Anypoint Platform to discover, design, build, deploy, manage, and govern APIs.
- Connect to databases, files, web services, SaaS applications, JMS queues, and more
- Add application logic, handle errors, and transform data using DataWeave.
- Structure applications to facilitate development and deployment.
- Handle batch data processing.
- Prerequisites
- Experience with an object-oriented language
- A basic understanding of data formats such as XML, CSV, and JSON
- A basic understanding of typical integration technologies such as HTTP, JMS, JDBC, REST, and SOAP
- Setup requirements
- A computer with:
- At least 8-16 GB RAM (16 highly recommended), 2GHz CPU, and 10GB available storage
- A minimum screen resolution of 1024x768
- Internet access to ports 80 and 3306 (with > 5Mbps download and > 2Mbps upload)
- The latest version of Chrome, Safari, Firefox, or Edge
- An Anypoint Platform account
- Anypoint Studio 7.15]] or later with embedded Mule 4.4 runtime
- A Salesforce Developer account (not a standard account) and API Access token
- Advanced REST Client 16.0.1]] or later (or any other REST client application)
- Get a detailed setup document here .
- A computer with:
Course breakdown
- PART 1: Getting started with Anypoint Platform
Module 1: Introducing application networks and API-led connectivity
- Explain what an application network is and its benefits
- Describe how to build an application network using API-led connectivity
- Explain what web services and APIs are
- Make calls to secure and unsecured APIs
Module 2: Introducing Anypoint Platform
- Describe the benefits of Anypoint Platform and MuleSoft’s approach to be successful with it
- Describe the role of each component in building application networks
- Navigate Anypoint Platform
- Locate APIs and other assets needed to build integrations and APIs in Anypoint Exchange
Module 3: Designing APIs
- Define APIs with RAML, the Restful API Modeling Language
- Mock APIs to test their design before they are built
- Make APIs discoverable by adding them to Anypoint Exchange
- Create public API portals for external developers
Module 4: Building APIs
- Use Anypoint Studio to build, run, and test Mule applications
- Use a connector to connect to databases
- Use the graphical DataWeave editor to transform data
- Create RESTful interfaces for applications from a RAML file
- Connect API interfaces to API implementations
- Synchronize changes to API specifications between Anypoint Studio and Anypoint Platform
Module 5: Deploying and managing APIs
- Describe the options for deploying Mule applications
- Deploy Mule applications to CloudHub
- Use API Manager to create and deploy API proxies
- Use API Manager to restrict access to API proxies
PART 2: Building Mule applications with Anypoint Studio
Module 1: Accessing and modifying Mule events
- Log event data
- Debug Mule applications
- Read and write event properties
- Write expressions with the DataWeave expression language
- Create variables
Module 2: Structuring Mule applications
- Create applications composed of multiple flows and subflows
- Pass events between flows using asynchronous queues
- Encapsulate global elements in separate configuration files
- Specify application properties in a separate properties file and use them in the application
- Describe the purpose of each file and folder in a Mule project
- Define and manage application metadata
Module 3: Consuming web services
- Consume web services that have an API (and connector) in Anypoint Exchange
- Consume RESTful web services
- Consume SOAP web services
- Pass parameters to SOAP web services using the Transform Message component
- Transform data from multiple services to a canonical format
Module 4: Controlling event flow
- Multicast events
- Route events based on conditions
- Validate events
Module 5: Handling errors
- Handle messaging errors at the application, flow, and processor level
- Handle different types of errors, including custom errors
- Use different error scopes to either handle an error and continue execution of the parent flow or propagate an error to the parent flow
- Set the success and error response settings for an HTTP Listener
- Set reconnection strategies for system errors
Module 6: Writing DataWeave transformations
- Write DataWeave expressions for basic XML, JSON, and Java transformations
- Write DataWeave transformations for complex data structures with repeated elements
- Define and use global and local variables and functions
- Use DataWeave functions
- Coerce and format strings, numbers, and dates
- Define and use custom data types
- Call Mule flows from DataWeave expressions
- Store DataWeave scripts in external files
Module 7: Triggering flows
- Read and write files
- Trigger flows when files are added, created, or updated
- Trigger flows when new records are added to a database table
- Schedule flows to run at a certain time or frequency
- Persist and share data in flows using the Object Store
- Publish and consume JMS messages
Module 8: Processing records
- Process items in a collection using the For Each scope
- Process records using the Batch Job scope
- Use filtering and aggregation in a batch step