We run data acquisition at the UK's biggest science project using Java. This year we completed a migration of around three million lines of code in our Java servers to OSGi running with Equinox and declarative services. This is the story of how we did it, the pitfalls and real world examples of what happened. We will cover why it was decided to modernize the server, how OSGi allowed a single product to be made out of multiple ones, how Spring and OSGi can be made to interact efficiently, the importance of no dependency bundles with OSGi, getting cardinality right, problems when services become hundreds (not tens) and mixing TDD with OSGi.
The heart of our work meant creating new bundles from which to design our server and this is being released open source with the Eclipse ‘Scanning’ project. This talk follows on from a JavaWorld article published on the same subject December 2016 goo.gl/1f5HnD
Diamond Light Source is the UK’s biggest science project and one of the brightest things in the solar system. You can read more about it at www.diamond.ac.uk.