Skip to content

Latest commit

 

History

History
135 lines (98 loc) · 5.92 KB

required-apis.asciidoc

File metadata and controls

135 lines (98 loc) · 5.92 KB

Required APIs

MicroProfile implementations must include the following specifications:

A MicroProfile compatible implementation must pass all required TCKs provided by each MicroProfile specification, including the Jakarta EE Core Profile 10 TCK. Passing the MicroProfile optional TCKs is not required.

These APIs and versions guarantee application developers a minimum set of APIs, but they are not intended to be restrictive.

Java SE

This MicroProfile platform specification requires Java SE 11 for both source and target compatibility. Some component specifications may still support a Java SE 8 minimum version when used standalone. MicroProfile implementations that support the MicroProfile platform specification can provide support Java SE 11 or higher.

Jakarta EE Core Profile 10

MicroProfile 6.0 and above requires Jakarta EE 10 Core Profile support.

  • Jakarta Annotations 2.1

  • Jakarta Contexts and Dependency Injection (Lite Section) 4.0**

  • Jakarta Dependency Injection 2.0

  • Jakarta Interceptors 2.1

  • Jakarta JSON Binding 3.0

  • Jakarta JSON Processing 2.1

  • Jakarta RESTful Web Services 3.1

** Full CDI support is not required. CDI SE support is not required.

MicroProfile Config 3.0

MicroProfile Config provides applications and microservices means to obtain configuration properties through several environment-aware sources both internal and external to the application and made available through dependency injection or lookup.

MicroProfile Fault Tolerance 4.0

MicroProfile Fault Tolerance provides the ability to separate execution logic from business logic. Key aspects of the API include TimeOut, RetryPolicy, Fallback, Bulkhead, and Circuit Breaker processing.

MicroProfile Health 4.0

MicroProfile Health provides the ability to expose the health of an application to the underlying platform (ex: Kubernetes)

MicroProfile JWT Authentication 2.1

MicroProfile JWT Authentication provides role based access control (RBAC) microservice endpoints using OpenID Connect (OIDC) and JSON Web Tokens (JWT).

MicroProfile Metrics 5.0

MicroProfile Metrics provides a unified way for MicroProfile applications to export monitoring data to management agents. Metrics will also provide a common Java API for exposing their telemetry data.

MicroProfile OpenAPI 3.1

MicroProfile OpenAPI provides a unified Java API for the OpenAPI v3 specification that all application developers can use to expose their API documentation.

MicroProfile Telemetry 1.0

MicroProfile Telemetry provides an adoption of the OpenTelemetry specification (currently for Distributed Tracing and Baggage in that context only).

Telemetry data is needed to power observability products. Traditionally, telemetry data has been provided by either open-source projects or commercial vendors. With a lack of standardization, the net result is the lack of data portability and the burden on the user to maintain the instrumentation.

The OpenTelemetry project solves these problems by providing a single, vendor-agnostic solution.

MicroProfile Rest Client 3.0

MicroProfile Rest Client provides a type-safe approach to invoke RESTful services over HTTP. As much as possible MicroProfile Rest Client attempts to use Jakarta RESTful Web Services APIs for consistency and easier re-use.