The R7 release builds upon the long history of the OSGi Alliance’s leadership in Java modularity and reflects a significant amount of effort from the technical members of the OSGi Alliance expert groups over the last 2 years. Thanks go to all of the members who have contributed to this release.
R7 represents many significant new features and capabilities and provides an open standards-based approach for a number of modern valuable and simple-to-use technologies important to Java developers.
This blog post is the start of a series of blog posts from the technical experts at the OSGi Alliance to share some of the key highlights of R7. The blog posts in this series will come out over the coming weeks and cover the following topics:
- Java 9 Support – Multi-release JAR support and runtime discovery of the packages provide by the JPMS modules loaded by the platform.
- Declarative Services – Constructor injection and component property types.
- JAX-RS – A whiteboard model for building JAX-RS microservices.
- Converter – A package for object type conversion.
- Cluster Information – Support for using OSGi frameworks in clustered environments.
- Transaction Control – An OSGi model for transaction life cycle management.
- Http Whiteboard – Updates to the Http Whiteboard model.
- Push Streams and Promises – The Promises packages is updated with new methods and an improved implementation and the new Push Streams package provides a stream programming model for asynchronously arriving events.
- Configurator and Configuration Admin – Configuration Admin is updated to support the new Configurator specification for delivering configuration data in bundles.
- LogService – A new logging API is added which supports logging levels and dynamic logging administration and a new Push Stream-based means of receiving log entries is also added.
- Bundle Annotations – Annotations that allow the developer to inform tooling on how to build bundles.
- CDI – Context and Dependency Injection support for OSGi developers.