OSGi declarative services exist for a long time and are used to implement a modular service-oriented architecture. Because of the supported dynamics, the easy way to define, register and consume services, declarative services can be found in various scenarios. Using several of the long time existing specifications like Declarative Service, ConfigurationAdmin and Remote Service Admin, it is also easy to setup the currently hyped micro services by using OSGi declarative services.
In this session we will give an introduction to declarative services in general and create some services in our favourite IDE. We will create and use them in combination with DS annotations. As Eclipse PDE supports DS annotations out of the box since Neon, we will prepare the tutorial in a way that both Eclipse RCP and plain OSGi developers can benefit. So every step of the tutorial will be shown in PDE and Bndtools in parallel. The main focus of the tutorial is to get started with declarative services. The tooling at this part shouldn't be the limiting factor. Although PDE has not support for DS 1.4 and of course we also want to show new features that were introduced with DS 1.4.
I published a Getting Started Tutorial that covers in general the contents of this session:
But we we also plan to extend that with examples on configuration and debugging, to have a good overview of the capabilities.
We will provide a pre-build IDE that can be downloaded by participants to reduce the setup time. And if everything works, the final step will be the implementation of a remote service with JAX-RS whiteboard.