Overview
The course is intended for system integrators who want to learn about Apache Camel as a rule-based routing and mediation engine that provides a Java object-based implementation of the Enterprise Integration Patterns.
Course Outline
1. Introduction to Camel
- Camel’s message model
- Camel’s architecture
2. Managing routing with Camel
The endpoints
- Create Java routes
- Using message filter
- Using multicasting
3. Data transformation in Camel
- Introduction to data transformation
- Transforming data with EIPs and Java
- XML Transformation
- Data format provided with Camel
- Using Camel’s CSV and JSON data format
- Transforming with templates
- Using Camel type converters
4. Beans and Camel
- Beans invocation from Java
- The Service Activator pattern
- Using bean’s registries
- Camel’s method-selection algorithm
- Bean parameter binding
5. Error Handling
- Understanding error handling
- Error handlers in Camel
6. Using Camel’s components
- Overview of Camel components
- File and FTP components
- JMS component
- CXF component for web services
- MINA component for networking
- JDBC and JPA components
- Timer component
7. Using the Enterprise Integration Patterns
- Aggregator
- Splitter
- Routing Slip
- Dynamic Router
- Load Balancer
8. Transactions in Camel
- Transaction basics
- The Transaction Client EIP
- Configuring and using transactions
9. Concurrency and scalability
- Using concurrency
- Camel thread pool profiles
- Using concurrency with EIPs
- Synchronicity and threading
- The concurrency client API
- Using the asynchronous routing engine
10. Monitoring Camel
- Checking health at the network level
- Checking health at the JVM level
- Using JMX with Camel
- Verifying application activity
- Managing Camel applications