Integrationer med Apache Camel - Foundation

Kort om undervisningen i Apache Camel
Apache Camel er et modent og udbredt Java-baseret open source framework til udvikling af stabile, fejltolerante integrationer mellem endepunkter af en lang række typer.
Endepunkterne defineres af over et hundrede modulære komponenter, og omfatter for eksempel JMS, HTTP, FTP, ElasticSearch, OracleDB, Git, Printere, REST services og mange forskellige filsystemer. For eksempel er det muligt at lade et Camel program, der kører i Openshift, kalde en REST service efter et Quartz schedule og lægge resultatet i en fil på et Windows share.
Camel er i høj grad modulariseret og pluggable, og det er muligt at skrive filtre, processorer og endda egne endepunkts-komponenter i standard Java. Simple standard-integrationer kan udtrykkes i ren konfiguration uden behov for kode.
I kurset kigger vi på et bredt udsnit af mulighederne i Apache Camel.
Indhold
Muligheder og begrænsninger i Apache Camel
Værktøjer og frameworks - Spring, Eclipse/IntelliJ, Logback & Hawtio
De forskellige Camel DSL
Et simpelt Camel program - Routes, struktur og konfiguration i XML og Java
Logning og inspection af Camel og med Camel
Endpoints og Components
Idempotens - in memory og persistent
Processors og Choice - indholdsbaseret routing på flere måder
Filters - brug Camels indbyggede filtre og lav et nyt
Aggregation - indbyggede muligheder for aggregation og lav en ny AggregationStrategy
ProcessStrategy - lav et simpelt plugin til at ændre et Endpoints funktion
Schedulering - absolut, relativt og med cron
Beans, BeanRepository og Service Beans
Camels REST DSL til nem oprettelse af services
Exceptions - håndtering af Exceptions og deadletter Route
- Test og Mocking
Kurset benytter til dels Spring Boot 2 til programafvikling, men forudsætter ikke kendskab til dette.
Kurset afholdes som udgangspunkt på dansk med engelske kursusmaterialer.
Forudsætninger
Det forventes, at deltagere har kendskab til emnerne dækket i kurset
Grundlæggende programmering i Java SE
Målgruppe
Kurset henvender sig til udviklere, der overvejer eller skal i gang med at bruge Apache Camel til at lave integrationer. For at få fuldt udbytte af kurset er det nødvendigt at have nogen erfaring med Java-programmering og at kende til begreber som objekter, streaming og exception-handling.
Efter kurset kan deltageren
Efter kurset kan deltageren lave integrationer og services med Apache Camel baseret på Java/REST DSL. Deltageren kan skrive filtre, beans og processorer og benytte forskellige endepunkts-komponenter. Deltageren kan også skrive en unit-test til en Camel route og definere en exception håndtering samt schedulere router.
