The class is intended for experienced Java developers working with systems integrations. The training is heavily code-focused and is based on the content the "Apache Camel Developer's Cookbook". There are no Powerpoint presentations at all throughout the session - all explanations are conducted on a white board, which allows us to dive deeper into areas where students want extra information. Students work together through pair-programming.
At course completion, students will have gained an understanding of, and experience working with:
- Camel Fundamentals - Routes, DSLs, endpoints, components, processors
- Testing- working from first principles with no support classes, Camel test support, mocking, debugging and AOP
- Routing with Enterprise Integration Patterns - Content Based Router, Filter, Enricher, Recipient List, Dynamic Router and others
- Data Transformations - transforming through expressions, data formats, manual Java transformation, using endpoints for XSLT, and deciding on which options are suitable in what circumstances
- Error Handling - try-catch, error handlers, compensating operations and redelivery
- Splitting and Aggregating - Splitter, Aggregator, Composed Message Processor, impacts of parallel processing
- Transactions - working with transactional resources (databases, message brokers), idempotent consumption for non-transactional components
Students should bring their own computers. The prerequisite software that needs to be installed on them is:
- Java 7 JDK
- Apache Maven 3.x
- An IDE such as IntelliJ, Eclipse or Netbeans
Example code will be made available at the beginning of the session.