Java News: Jakarta EE 12 Slips, Java 27 Preview Features, 2026-07-18
java

Java News: Jakarta EE 12 Slips, Java 27 Preview Features, 2026-07-18

3 min read

Jakarta EE 12 GA Slips Toward the End of 2026

Jakarta EE 12's general availability has moved again. The release, originally targeted for summer 2026, has been pushed out — first informally discussed as a Q4 2026 target, and more recently framed by the working group as a compromise to land "by the end of 2026." The Eclipse Foundation cites vendor delays in finishing Jakarta EE 11 implementations as the primary driver, which pushed back the start of serious Jakarta EE 12 compatibility work across application servers.

On the technical side, the platform is holding its course: a minimum baseline of JDK 21 with forward support for JDK 25, and continued removal of the deprecated SecurityManager class (deprecated since JDK 17, permanently disabled in JDK 24) from affected specifications. Several component specs have already reached Milestone 2, including Jakarta Contexts and Dependency Injection 5.0, Jakarta Persistence 4.0, Jakarta Validation 4.0, Jakarta RESTful Web Services 5.0, the new Jakarta Query 1.0, Jakarta Data 1.1, and Jakarta NoSQL 1.1.

For teams planning migrations, the practical takeaway is that GlassFish, Open Liberty, WildFly, and Payara compatible-implementation timelines will likely trail the spec by a quarter or more once GA lands, so anyone targeting Jakarta EE 12 in production should treat "end of 2026" as the earliest realistic planning date rather than a hard deadline.

Read more — Eclipse Foundation / Jakarta EE Platform


Java 27 Locks In Default-On Changes Ahead of September GA

With Java 27 targeted for general availability on September 14, 2026, several JEPs that started as opt-in features are now locked in as defaults, alongside security- and cryptography-focused additions. The release carries nine JEPs in total, a mix of finalized features and further preview/incubator rounds.

Two performance-oriented defaults stand out. Compact Object Headers — introduced under JEP 450 back in JDK 24 — is now enabled by default, shrinking the per-object heap footprint across the board and giving most applications a "free" reduction in memory pressure without any code changes. Separately, G1 becomes the default garbage collector in every configuration, including small-heap and low-CPU environments where the Serial collector was previously preferred; accumulated tuning since G1's original JDK 9 debut has closed the gap Serial used to hold in those constrained cases.

On the security side, JEP 527 adds post-quantum hybrid key exchange for TLS 1.3, combining a classical algorithm with a quantum-resistant one so applications get forward protection against future quantum-capable attackers without giving up compatibility with existing TLS infrastructure. JEP 523 tightens Java Flight Recorder by masking sensitive values — command-line arguments, environment variables, and system properties — by default, closing a long-standing gap where JFR recordings could leak secrets simply by capturing how a process was launched.

The preview lineup carries over several familiar names for another round: Structured Concurrency, Lazy Constants, and PEM Encodings of Cryptographic Objects all return with incremental refinements, while Primitive Type Patterns and the Vector API are resubmitted unchanged as their respective preview and incubator periods continue.

Read more — Loïc Mathieu


Stanislav Lentsov

Written by

Stanislav Lentsov

Software Architect

You May Also Enjoy