OSGi enables Component Oriented design and development. Using services as the low-level glue that holds components together, we can write components that are widely reusable in different contexts, and are both aware of and capable of reacting to their environment.
However, there are several competing approaches to defining components in OSGi, and each has its own advantages and disadvantages. There are currenty three front-runners:
In this tutorial we will work through how to use all three approaches, comparing them as we go and hopefully helping you to to come to a conclusion about which one best suits the needs of your application. Finally we will show how each of these component models can be used to call services remotely across the network using the new Distributed OSGi specification.
Pre-Requisites: Attendees should be competent Java developers or hands-on technical architects — you will be required to write code. Please ensure that your laptop has a working version of Java 5 and Eclipse 3.4 with Java development tools. A working Wi-Fi connection will be beneficial in order to participate in the Distributed OSGi exercise, but not essential.
Neil is a Java developer and consultant specialising in Eclipse RCP, RAP and OSGi, in particular their use in large enterprise settings. Recently he has helped a number of financial institutions with their adoption of RCP and evangelises the use of the Eclipse/OSGi technology platform for both client and server-side development.
Neil is also the author of "OSGi in Practice", an introductory book on OSGi which is available for free under a Creative Commons license.
Heiko Seeberger is WeigleWilczek’s technical director. His main areas of expertise include the development of enterprise applications using OSGi, Eclipse RCP, Spring, AspectJ and Java EE. Heiko brings more than ten years of professional experience in IT consulting and software development to the Eclipse Training Alliance, actively contributes to Eclipse projects and regularly shares his expertise in articles and talks.