Jakarta EE, a Working Group hosted by the Eclipse Foundation, released Jakarta EE 10 today.
This achievement was only possible because of a global community of contributors. Congratulations and thank you to everyone who played a part in this release.
There are many new and innovative features added by the Jakarta EE community.
Jakarta EE 10 Enables Modern, Lightweight Java Applications and Microservices
Let’s start with some of the key updates in Jakarta EE 10 — updates that plant Jakarta EE firmly in the modern era of open source microservices and containers.
Most prominently, Jakarta EE 10 includes a new profile specification: Jakarta EE Core Profile. The Core Profile includes a subset of Jakarta EE specifications that target the smaller, lightweight runtimes needed for microservices development. This is the first new Profile added to the enterprise Java specifications in over a decade.
In addition, new functionality has been added to more than 20 component specifications. For example:
- Jakarta Contexts and Dependency Injection (CDI) 4.0 includes a new CDI-Lite specification allowing a reflection-free programing model that enables compiling to native by providing build compatible extensions.
- Jakarta RESTful Web Services 3.1 standardizes a Java SE Bootstrap API and support for multipart/form-dat
- Jakarta Security 3.0 supports OpenID Connect for authentication to help developers meet modern web-based security requirements
Jakarta EE 10 also broadens support for annotations so it’s easier to build modularized applications and there’s better integration across component APIs.
Finally, I want to point out that Jakarta EE 10 gives enterprises the flexibility to leverage Java in the way that’s best for their organization. They can:
- Develop and deploy Jakarta EE 10 applications on Java SE 11 as well as Java SE 17, the most current long-term support (LTS) release of Java SE
- Take advantage of new features, including the modular system, that were introduced in Java SE 9 and supported in Java SE 11
The Jakarta EE Gamble Is Paying Off
This is all great news for Jakarta EE. But to understand how significant this release is, we need to go back to the Java EE days.
Java EE was the bedrock of application development for the Fortune 1000 for 20 years before it moved to the Eclipse Foundation as Jakarta EE. But the first Jakarta EE releases didn’t add new functionality. Then, Jakarta EE 9 introduced a major breaking change: the move to the jakarta.* namespace.
It’s hard to overstate what a gamble that was. Java EE had been basically backwards-compatible for more than two decades. We asked enterprises to change the fundamentals of applications they’d been relying on for a long time. We asked the enterprise Java ecosystem to re-align their products and opens source projects on a new namespace. Oftentimes, when you try to make such a radical change, your ecosystem says no, it’s too much work. And quite a few people thought the Jakarta EE gamble could fail for exactly that reason.
But it didn’t. IBM, Red Hat, Payara, Spring, the Apache Tomcat and TomEE projects, and Eclipse Jetty, to name a few, all moved to the new namespace with us.
Now, with new support for modern microservices architectures and containers, Jakarta EE 10 paves the way for Jakarta EE to drive the innovative, multi-vendor standards needed for the future of our industry.
Get Involved in the Future of Jakarta EE
The momentum around Jakarta EE 10 is well underway. Eclipse GlassFish has released a compatible implementation, and other enterprises and project teams — including Fujitsu, IBM, Oracle, Payara, Red Hat and Tomitribe — are already working towards certifying Jakarta EE 10 compatible products
Jakarta EE has an exciting future ahead, and we want everyone to participate and contribute. To learn more, connect with the global community. If enterprise Java is important to your business strategy, join the Jakarta EE Working Group. Learn more about the benefits and advantages of membership here.