Developer Training for OSGi / Apache Karaf

Description: This training focuses on the essential features of OSGi and Apache Karaf that developers need to know in order to produce and support OSGi based modular Java projects. The course is delivered over the course of three days, the first two of which focuses on establishing a foundation knowledge of OSGi basics, followed on day three by introducing Apache Karaf and its rich OSGi run time environment. The labs offer students a hands-on experience in areas they will encounter in real-world OSGi based projects.

Target Audience: This course is for architects and developers who need to understand the essential topics of using OSGi and Apache Karaf to build modular Java solutions.

Objective: After this course the attendees will have learned essential topics in using OSGi and Apache Karaf, such as deploying a run time environment, building modular code, deploying and managing applications, and taking advantage of OSGi’s dynamic service model.

Duration: 3 Days

Cost: Course fees require a minimum of 6 attendees plus the cost of the instructor travel.  Contact us for a detailed fee schedule.

Pre-requisites: Attendees must have:

  • Good working knowledge of Java, including a good 
understanding of Java developments tools (ant, maven, eclipse).
  • Basic understanding of distributed systems concepts (SOA, Client/Server, Publish/Subscribe).
  • Hardware: Students are required to have a computer or laptop with Windows, MacOS, or Linux with Java 7 and Maven 3 installed, as well as the ability to read PDF documents. Class materials will be watermarked and distributed to the students in electronic format.

Day 1
1) Introduction to OSGi
2) Lab – Install and configure Apache Felix
3) OSGi Bundles, the base unit of OSGi modularity.
4) Lab – Bundles
5) OSGi Life Cycle, fine grain control of software life.
6) Lab – Life Cycle
7) OSGi Services, inter-bundle services sometimes referred to as “SOA in a JVM”.
8) Lab – Services
9) Core Services Review
10) Lab – Core Services

Day 2
1) Compendium Services Review
2) Lab – Compendium Services
3) Whiteboard and Extender Patterns
4) Lab: Extender Pattern
5) Bundle Host/Fragment.
6) Lab: Build Bundle Host and Fragment.
7) Aries JPA/JTA
8) Lab: JPA/JTA
9) Bundle Testing.
10) Lab: Pax Exam.

Day 3
1) Introduction to Apache Karaf
2) Lab – Install and configure Apache Karaf
3) Karaf Consoles
4) Lab – Console familiarity
5) Application Logging
6) Lab – Logging
7) Provisioning Applications
8) Lab – Karaf Feature based project
9) Deploying Applications
10) Lab – Karaf Deployer