
Explore how Apache Camel simplifies enterprise integration by applying enterprise integration patterns, enabling microservices and cloud with a lightweight, component-based architecture and a custom DSL.
Create two Spring Boot microservices with Apache Camel using Maven, add Web, Actuator, and Dev Tools, then import into Eclipse and run Camel microservice A.
Build your first Apache Camel route in a Spring Boot project by extending route builder, wiring a timer to a log, and applying a constant transformation.
Learn to process messages in Camel routes by implementing a simple logging processor, using the Processor interface, and printing the Exchange or its body, alongside transform and bean options.
Create a Camel route that watches the input folder, moves files to the output folder, and prints file content to the log, illustrating two file endpoints in Camel.
Launch an ActiveMQ broker with Docker on your local machine to enable a camel microservice to place a message on the queue and another microservice to consume it.
Build a Camel Spring Boot microservice that sends a message to an ActiveMQ queue every 10 seconds using a sender router, timer, and queue endpoint.
Configure microservice b to use port 8000 and connect to ActiveMQ, then implement a receiver camel route that reads from my activemq queue and logs each message.
Explore Camel terminology and architecture by examining Camel context, routes, components, endpoints, and exchanges, and learn how messages flow from queues to databases or files through processors.
Unmarshal Json messages to a Java bean in an ActiveMQ Camel route by reading files from a folder, deserializing with Jackson, and configuring the Jackson starter.
Unmarshal a json message into a currency exchange bean and process it with a spring-managed processor. Transform the message with a currency exchange transformer and return the updated bean.
Learn to configure a Spring Boot Apache Camel route to receive XML messages from an ActiveMQ queue and unmarshal XML to a currency exchange bean with Jackson XML.
Learn to configure Camel with Kafka in Spring Boot, launch Zookeeper and Kafka via Docker Compose, and implement sender and receiver routes for a Kafka topic.
Expose a simple currency exchange REST API in microservice B and call it from a Camel route in microservice A using the Camel HTTP component with timer-triggered requests.
Explore using choice and simple language in Apache Camel routes on Spring Boot to process file inputs, distinguish XML and JSON files, log messages, and transform content.
Learn to create complex deciders for choice in a camel route using a decider bean in spring boot, evaluating body, headers, and exchange properties.
Explore enterprise integration patterns in Camel, starting with the default pipeline pattern and the multicast pattern that copies messages to multiple endpoints, such as log, ActiveMQ, Kafka, or REST APIs.
Learn content based routing and the split pattern in Camel, using CSV unmarshal to split a file into multiple messages and route them to an ActiveMQ split queue.
Explore custom split logic in Camel with a delimiter, converting the body to a string and using a splitter component to produce multiple messages for a queue.
Explore the aggregation enterprise integration pattern in Camel with Spring Boot by grouping messages on a key, using a completion size of three, and aggregating results into a list.
Explore the routing slip pattern to dynamically route messages to selected endpoints, driven by business logic and a routing slip string, such as direct endpoint one, two, or three.
Explore the dynamic routing pattern in Apache Camel, where a dynamic router bean decides the next endpoint among steps using exchange properties, headers, and body, until it returns null.
Discover camel best practices with dynamic configuration from application.properties, property-driven endpoints and time periods, and standalone or spring boot setups with main run controller and logging levels.
Learn camel best practices for error handling with tracing, intermediate logging, and a dead letter queue to prevent message loss, plus wire tap for additional logging.
Encrypt messages across queues using a keystore and Camel crypto starter in Apache Camel, securing ActiveMQ and Kafka transmissions with encryption and decryption.
Learn how the Apache Camel framework enables enterprise integration with Spring Boot, explore configuration options and starters, and access examples and references from the Camel GitHub repository.
Install docker on mac, windows, or linux using docker desktop or distribution instructions, then run docker --version to verify a version at least 19.
Learn how Docker enables rapid deployment of a Spring Boot application, delivering a ready-to-run image that runs without Java installation and simplifies operations.
Discover how Docker Hub acts as a registry, with repositories and tags, and how a downloaded image becomes a running container via port mapping on a bridge network.
Run containers in detached mode (-d), tail logs with docker logs -f, launch two app instances on ports 5000 and 5001, and learn to list and stop containers.
Understand how the Docker client talks to the Docker daemon on Docker Desktop to run containers and manage local images, while the daemon pulls and pushes images to registries.
Understand why Docker is popular by comparing lightweight containers to heavy virtual machines, and see how easily it runs on local machines and cloud services.
Explore docker images by tagging, pulling, and running them, and compare latest tags versus actual releases. Inspect image history and details, search official images, and remove local images.
Apply hands-on with Docker containers, learning run, pause, unpause, logs, inspect, prune, and stop or kill, and implement a restart policy of always for resilience.
Explore essential docker commands—events, top, stats, and system df—to monitor containers, set memory and cpu quotas, and manage images and volumes.
Enterprise Integrations are complex. The evolution of Microservices and Cloud make Enterprise Integration even more complex.
Do you want to use Apache Camel to simplify Enterprise Integration?
Do you want to use Apache Camel and Spring Boot together and focus on the business logic instead of wiring and connections?
Do you want to use Apache Camel to integrate with Kafka, Apache MQ, and File System?
Look No Further.
NOTE: This course requires you to download Docker Desktop. An alternative to Docker Desktop is Podman Desktop. If you are a Udemy Business user, please check with your employer before downloading software.
Step By Step Details
Getting Started with Apache Camel and Spring Boot
Step 01 - Getting Started with Apache Camel and Enterprise Integration
Step 02 - Creating Microservices for playing with Apache Camel
Step 03 - Creating your first Apache Camel Route
Step 04 - Using Spring Beans for Transformation in Camel Routes
Step 05 - Processing using Camel Processors in Camel Routes
Step 06 - Creating a Camel Route to play with Files
Integrating Apache Camel with ActiveMQ and Kafka
Step 01 - Launch ActiveMQ as a Docker Container
Step 02 - Creating Sender Camel Route for ActiveMQ in Microservice A
Step 03 - Creating Receiver Camel Route for ActiveMQ in Microservice B
Step 04 - Understanding Camel Terminology and Architecture
Step 05 - Unmarshalling JSON Message to Java Bean in ActiveMQ Camel Route
Step 06 - Transformation and Processing after Unmarshalling in Camel Route
Step 07 - Unmarshalling XML Message to Java Bean in ActiveMQ Camel Route
Step 08 - Sending and Receiving messages on Kafka with Camel
Exploring Apache Camel Further
Step 01 - Making HTTP Rest API calls from a Camel Route
Step 02 - Using Choice and Simple Language in Camel Routes
Step 03 - Creating Reusable Endpoints in Camel Routes
Step 04 - Creating Complex Deciders for Choice in Camel Route
Exploring Apache Camel Enterprise Integration Patterns
Step 01 - Exploring Pipeline and Multicast EI Patterns in Camel
Step 02 - Exploring Content-Based Routing and Splitter EI Patterns in Camel
Step 03 - Exploring Splitter Enterprise Integration Pattern in Camel
Step 04 - Exploring Aggregation Enterprise Integration Pattern in Camel
Step 05 - Exploring Routing Slip Enterprise Integration Pattern in Camel
Step 06 - Exploring Dynamic Routing Enterprise Integration Pattern in Camel
Exploring Apache Camel Best Practices
Step 01 - Camel Best Practices - Dynamic Configuration, Stand Alone, and Logging
Step 02 - Camel Best Practices - Tracing, Dead Letter Queue, and WireTap
Step 03 - Camel Best Practices - Secure Messages with Encryption
Step 04 - Thank You