Before the final release of Jakarta EE 11, preparations for Jakarta EE 12 were well underway as plan reviews for 24 Jakarta EE specifications were approved in early 2025.
Currently scheduled for a GA release in July 2026, as per the release plan, Jakarta EE 12 will focus on consistency and configuration, and require a minimum of JDK 21 along with support for the upcoming release of JDK 25. Many of the updated specifications will feature the removal of the Java SecurityManager
class that was deprecated in JDK 17 and permanently disabled in JDK 24. This includes specifications that haven’t been updated since the release of Jakarta EE 10 in September 2022.
Release Timeline
The proposed Jakarta EE 12 release timeline is shown in the diagram below.
The current plan to release Milestone 1 in September 2025.
Jakarta EE 12 Specifications
As shown in the specification diagram below, this is a preliminary look at the specifications and their respective versions that are proposed for the Jakarta EE 12 Platform.
We briefly examine the three specifications labeled as NEW
in the above diagram. We will also examine some proposed changes. Note that these three specifications will need to be voted into the Jakarta EE 12 Platform by the Jakarta EE steering committee.
Jakarta Query
Having passed its creation review in April 2025, Jakarta Query 1.0, a new specification in the Jakarta EE ecosystem, defines an object-oriented language designed to support the Jakarta Persistence, Jakarta Data and Jakarta NoSQL specifications.
The intent is to move the Jakarta Persistence Query Language (JPQL) and the Jakarta Data Query Language (JDQL) into this new specification. There is potential to support other Java-related persistence technologies as well.
Jakarta NoSQL
Jakarta NoSQL 1.1, a standalone specification since 2020, defines a set of APIs and provides a standard implementation for most NoSQL databases and streamlining the integration of Java applications with those databases.
Proposed new features include: a Standardized Driver Communication API; support for the new Jakarta Query specification; and support for prepared statements.
Jakarta MVC
Jakarta MVC 3.1, also a standalone specification since 2020, defines a standard for creating web applications following the action-based model-view-controller pattern.
Proposed new features include: support for the Jakarta RESTful Web Services ExceptionMapper
interface for improved response handling; and support for the Jakarta Config specification.
Other New Specifications
Having passed its creation review in April 2025, Jakarta Portlet 4.0, a new specification in the Jakarta EE ecosystem, defines server-side and client-side APIs for developing modular and reusable web components, known as portlets, in Java applications that are managed within a portlet container. This new specification is a migration from JSR 362, Portlet Specification 3.0, under Java EE 8.
Also having passed its creation review in April 2025, Jakarta Portlet Bridge 7.0, a new specification in the Jakarta EE ecosystem, defines the necessary behavior and APIs for Jakarta Faces applications to operate within a portlet environment. The bridge aligns a Jakarta Faces lifecycle with a Jakarta Portlet lifecycle. This new specification is a migration from JSR 378, Portlet 3.0 Bridge for JavaServer Faces 2.2 Specification, under JavaEE 8.
Initial plans for both Jakarta Portlet and Jakarta Portlet Bridge are “strictly limited to completing the namespace and dependency migration to ensure compatibility with Jakarta EE 10 and to ease the migration path for developers and organizations.“
It is anticipated that these two specifications will not be ready for Jakarta EE 12.
Consistency
Before Jakarta Data was introduced in Jakarta EE 11, Jakarta Persistence and Jakarta NoSQL were the only data access-specific specifications.
Jakarta Persistence, with a rich history dating back to May 2006, was initially developed by the Enterprise JavaBeans 3.0 expert group (JSR 220) with the release of Java EE 5.
Jakarta NoSQL started out with the development of its ultimate implementation, Eclipse JNoSQL, before the specification was even a concept. Introduced to the Java community in March 2017, Eclipse JNoSQL was originally planned to be a community project led by Otávio Santana, founder of OS Expert Services, under the auspices of the Java Community Process.
Jakarta EE 12 will further advance data access technologies with the presumed acceptance of the Jakarta Query and Jakarta NoSQL specifications into the Jakarta EE Platform. In a recent InfoQ technical article, Santana discussed the advantages of improved data access in Jakarta EE 12, writing:
If Jakarta EE 12 could have a nickname, we could define it as the Data Age, where it will include polyglot persistence within the Jakarta EE ecosystem. It will enable Jakarta EE to “speak” both SQL and NoSQL, thanks to the inclusion of Jakarta NoSQL 1.1.
The HTTP/3 specification, introduced in June 2022, offers new features such as stream multiplexing, per-stream flow control, and low-latency connection establishment.
Early discussions to support HTTP/3 will possibly include a new Jakarta HTTP specification that would create consistency to track HTTP-based request and response objects among specifications such as Jakarta RESTful Web Services and Jakarta Servlet.
Configuration
Having passed its creation review in October 2021, Jakarta Config 1.0 defines and manages configuration through environmental variables, system properties or property files. Inspired by the MicroProfile Config specification, Jakarta Config is designed to externalize configuration from microservices and inject configuration values at runtime.
Deprecation of the Application Client Container
The Application Client Container (ACC), introduced with the release of GlassFish 3.1 in July 2011, manages the execution of Jakarta EE application client components, which are used to access a variety of Jakarta EE services, such as resources from Jakarta Messaging and components from Jakarta Enterprise Beans, from a JVM outside the Eclipse GlassFish Server.
Deprecating the ACC was raised late in the Jakarta EE 11 release process, so it was ultimately decided to declare this feature as optional, along with Remote EJB, in Jakarta EE 11 so that it may be adequately addressed in Jakarta EE 12.
Jakarta EE Future Directions Interest Group
A Jakarta EE Future Directions Interest Group, formed in July 2024, brings together developers from “inside and outside of Java-related working groups, influencers, and other interested parties.” This group has accepted the role of generating ideas, conducting research and providing recommendations to the Jakarta EE and MicroProfile Working Groups. Areas of interest would include: emerging technologies; new industry use cases; integrations; and messaging and marketing. Participating members (in alphabetic order) so far include: Garden State JUG, IBM, Association of the German Java User Groups (iJUG), London Java Community (LJC), Microsoft, OmniFish, OpenElements, Oracle and Payara.
More details on the recent release of Jakarta EE 11 and what is on the horizon for Jakarta EE 12 may be found in this Eclipse Foundation blog post.
Editor’s Notes
[a] Michael Redlich serves as a Co-Director of the Garden State JUG, a committer on the Jakarta Data and Jakarta NoSQL specifications, and a member of the Jakarta EE Future Directions Interest Group.
[b] The Jakarta EE 12 diagram is courtesy of the Eclipse Foundation.