Application Notes

Integrate Apache Karaf and Bnd toolchain

Shows how to leverage Bnd remote debugger to integrate Bnd and Apache Karaf

The Bndtools Workspaces

How to work with bnd workspaces

Concurrency in Java and OSGi

OSGi is multi-threaded and service calls will happen on different threads. This App note discusses the concurrency issues and provides a number of standard patterns that work well in OSGi (and outside).

Data Transfer Objects (DTO)

OSGi started to heavily use DTO's since R5. DTOs do not look very object oriented, this application note provides the reasoning why DTOs .

Gogo shell

A short introduction to the Gogo shell

Interceptors in OSGi

Discussion of the ins and outs of using proxies in OSGi

Modulariy Maturiy Model (MMM)

The Modularity Maturity Model was proposed by Dr Graham Charters at the OSGi Community Event 2011, as a way of describing how far down the modularity path an organisation or project is.

Using Native Libraries in a Bundle

Discusses the issues with native libraries and OSGi

Releasing to a Nexus server

Shows how the OSGi enRoute bundles and API are released to Maven Central

Principles of OSGi

Discussion of the principles behind OSGi

Notes about Resolving

Notes regarding resolving bundle capabilities and requirements