Ten months after the release of MicroProfile 7.0, the MicroProfile Working Group has released version 7.1 of MicroProfile to the Java community. This new release features continued alignment with Jakarta EE 10 and updates to two community-developed core APIs:
The Jakarta EE 10 Core Profile contains seven specifications specifically targeted for smaller runtimes that are suitable for microservices and ahead-of-time compilation. These include Jakarta Contexts and Dependency Injection 4.0 (CDI), Jakarta RESTful Web Services 3.1 (JAX-RS), Jakarta JSON Processing 2.1 (JSON-P) and Jakarta JSON Binding 3.0 (JSON-B), the first three of which were the original specifications with the release of MicroProfile 1.0.
We briefly examine the updated specifications here.
MicroProfile Telemetry, introduced with the release of MicroProfile 6.0 in January 2023, adopts the OpenTelemetry specification from the Cloud Native Computing Foundation (CNCF) that allows MicroProfile applications to utilize the observability features of tracing, logging, metrics and baggage. If configured, MicroProfile Telemetry automatically enables tracing from Jakarta RESTful Web Services.
New features in MicroProfile Telemetry 2.1 include: a dependency upgrade to Awaitility 4.2.2 to allow for running the TCK on JDK 23; and improved metrics from ThreadCountHandler
class to ensure consistent text descriptions.
With the merger of the OpenTracing and OpenCensus specifications in May 2019 to form OpenTelemetry, MicroProfile Telemetry was created to replace its predecessor, MicroProfile Open Tracing, which was moved to the standalone set of specifications as shown in the diagram above.
MicroProfile Open API, introduced with the release of MicroProfile 1.3 in January 2018, adopts the OpenAPI specification providing a unified API so that application developers can expose their API documentation within their applications.
New features in MicroProfile Open API 4.1 include: the addition of a jsonSchemaDialect()
method, defined in the OpenAPI
interface, to render the jsonSchemaDialect
field; and a minor improvements to the Extensible
interface that adds the @since
tag in the JavaDoc.
Introduced at Red Hat’s DevNation conference on June 27, 2016, the MicroProfile initiative was created as a collaboration of vendors to deliver microservices for enterprise Java. The release of MicroProfile 1.0, announced at JavaOne 2016, consisted of three JSR-based APIs considered minimal for creating microservices: JSR-346 – Contexts and Dependency Injection (CDI); JSR-353 – Java API for JSON Processing (JSON-P); and JSR-339 – Java API for RESTful Web Services (JAX-RS).
MicroProfile 4.0, released in December 2020, was the first version delivered under the then newly-formed MicroProfile Working Group, established in October 2020. Current contributing members of the working group include IBM, Red Hat, Payara, Tomitribe, Oracle, Microsoft, Fujitsu, Primeton, Atlanta Java User Group and iJUG. Guest members include Garden State Java User Group and Ostfalia.
Editor’s Note
Michael Redlich serves as a Co-Director of the Garden State Java User Group, a guest member of the MicroProfile Working Group.