Here are the things every Java developer working on OSGi-based middleware must know, IMO:

Essentials:

  • Design-by-Contract & SOA
  • Component/Package Versioning
  • OSGi Bundle Lifecycle
  • Bundle Manifest directives
  • Core OSGi services
  • Spring DM (especially for simplification of the usage of OSGi services and writing in-container tests)
  • BND tool (I cannot think of a better way to create the OSGi manifest files than this)
  • Basics of classloading in OSGi

Advanced Topics:

  • HTTP Server options in OSGi (OSGi HTTP Service, HTTP Servlet Bridge, etc.)
  • OSGi “uses” directive and the “type leakage” problem
  • OSGi Services vs. Extensions/Extension points
  • Service Trackers
  • Concurrency gotchas in OSGi
  • The Whiteboard pattern
  • The “Extender bundle pattern”
  • OSGi Declarative Services and Configuration Admin Service

Technorati Tags: , ,

Leave a Reply

TOP