A bit later than originally planned, version 11 of the Jakarta EE Web Profile—maintained by the Eclipse Foundation—has officially arrived, bringing major improvements over previous releases.
The Jakarta EE Web Profile is a subset of the full Jakarta EE Platform, tailored specifically for modern web application developers. It leaves out enterprise-focused APIs to reduce resource usage, offering a lightweight alternative for those who only need web technologies. This makes it a middle ground between basic servlet containers and the full Jakarta EE platform.
Despite its lighter footprint, the Web Profile includes a wide range of technologies. It supports presentation and state management (via Jakarta Faces and Jakarta Pages), business logic (through Jakarta Enterprise Beans Lite), and transaction handling (using Jakarta Transactions). It also includes Jakarta Persistence, which simplifies data storage and access.
New Features in Jakarta EE 11 Web Profile
Jakarta EE 11 introduces several improvements and new specifications aimed at modernizing enterprise Java development.
One of the key additions is Jakarta Data, a new specification that provides a high-level API for easier database access. Similar to Spring Data, Jakarta Data allows developers to perform database operations using repository interfaces:
@Repository
public interface Garage extends BasicRepository<Car, Long> {
List<Car> findByType(CarType type);
Optional<Car> findByName(String name);
}
Jakarta EE 11 is based on Java SE 17 and 21, supporting modern Java features such as records and virtual threads. Beyond the updated Java versions, several core specifications have also been enhanced.
-
Jakarta Persistence now has better support for date/time handling and more powerful JPQL features.
-
Jakarta Concurrency introduces annotations like
@Schedule
and@MaxConcurrency
, and adds support for virtual threads to improve thread safety. -
Jakarta Security improves support for JWT, adds multiple authentication mechanisms, and introduces an in-memory identity store.
These updates continue the trend of aligning specifications more closely with Jakarta Contexts and Dependency Injection (CDI), creating a more consistent programming model across the platform.
Steve Miller, CEO of Payara, described this release as Jakarta's first major step forward in taking full advantage of Java’s latest capabilities. He emphasized that unlike earlier versions—mostly focused on namespace changes and minor refinements—this release represents a significant evolution.
Currently, the new version is supported by the Eclipse GlassFish container, which was also used during the development process. However, updated versions of other popular Jakarta EE implementations—Open Liberty, WildFly, and Payara—are expected to follow soon, enabling support for applications built with the new Web Profile.