payara-header-2

Jakarta EE

Java Enterprise Edition, originally J2EE, later Java EE, and now Jakarta EE, is a set of specifications that extend Java SE for large-scale, distributed, multi-tiered enterprise applications. Where Java SE provides the core language and standard libraries, Jakarta EE adds APIs for web services, messaging, persistence, security, transactions, and more.

Read More
Products
Type
Topic
Role
Found all results
Searching on a tablet computer

No Results to Show

Uh-oh, we couldn’t find any results that match. Adjust your filters or search and try again.

From J2EE to Java EE to Jakarta EE 

Sun Microsystems created Java EE in the late 1990s to standardize enterprise Java development. Oracle acquired Sun in 2010 and maintained Java EE for seven years. In 2017, Oracle donated the platform to the Eclipse Foundation, where it was relaunched as Jakarta EE under a community-governed, vendor-neutral standard.

The rename from Java EE to Jakarta EE was structural, not cosmetic. Where Oracle controlled Java EE development, Jakarta EE is guided by a broad ecosystem including IBM, Red Hat, Payara (now Azul), Fujitsu and others. The javax.* namespace became jakarta.* starting with Jakarta EE 9, which is the single largest migration task when moving from Java EE 8 to Jakarta EE.

What Jakarta EE Includes 

Jakarta EE is implemented by certified application servers and runtimes that pass the Jakarta EE compatibility test suite (TCK). Certified implementations include Azul Payara Server 7 (Jakarta EE 11 across Full Platform, Web Profile, and Core Profile), Open Liberty (IBM), WildFly and JBoss EAP (Red Hat), Eclipse GlassFish 8, and Apache TomEE.

The platform is organized into three profiles:

  • Full Platform:
    • SCOPE: Complete enterprise API set: Servlet, JPA, JAX-RS, CDI, EJB, JMS, JCA, Jakarta Security, Jakarta Concurrency, Jakarta Data.
    • USE CASES: Mission-critical enterprise applications, transactional systems, regulated workloads
  • Web Profile:
    • SCOPE: Subset focused on web applications: Servlet, JPA, JAX-RS, CDI, JSTL, Jakarta Security
    • USE CASES: Web applications and REST services without the full EJB/JCA stack
  • Core Profile
    • SCOPE: Minimal profile for cloud-native and microservices: CDI, JSON-P, JSON-B, REST
    • USE CASES: Lightweight microservices using MicroProfile

 

Core APIs most applications use 

  • Jakarta Servlet for HTTP request handling 
  • Jakarta RESTful Web Services (JAX-RS) for building REST APIs 
  • Jakarta Persistence (JPA) for object-relational mapping and database access 
  • Jakarta Contexts and Dependency Injection (CDI) for dependency injection and lifecycle management 
  • Jakarta Enterprise Beans (EJB) for transaction management and component lifecycle 
  • Jakarta Security for authentication and authorization 
  • Jakarta Concurrency 3.1 (Jakarta EE 11) for container-managed virtual threads, enabling high-concurrency workloads including AI model calls without thread-pool tuning 
  • Jakarta Data 1.0 (Jakarta EE 11) for repository abstraction with vector storage support, enabling retrieval-augmented generation inside the existing application 

How to Get Started 

  1. Choose a runtime. For commercial support, Azul Payara Server 7 is Jakarta EE 11 certified across all three profiles. For community use, Payara Server Community, Open Liberty, and WildFly are widely deployed. 
  2. Pick your APIs. Most enterprise applications start with Servlet, JAX-RS, CDI, and JPA. Add MicroProfile for health checks, metrics, fault tolerance, and OpenAPI. 
  3. Generate a project. Use the Jakarta EE Starter (start.jakarta.ee) or the Azul Payara Starter to scaffold a project with Maven or Gradle. 
  4. Deploy. Package as a WAR file and deploy to your application server. For microservices, package with MicroProfile or deploy to Azul Payara Micro as a single executable JAR. 

IDE support is available in IntelliJ IDEA, Eclipse, VS Code, and NetBeans. 

How Azul Can Help 

Azul Payara Server is a Jakarta EE 11 certified application server that moves an enterprise’s existing Java EE or Jakarta EE estate off Oracle WebLogic, IBM WebSphere, or Red Hat JBoss EAP without rewriting the application. The existing .war or .ear deploys to the namespace-matched Payara version unchanged. Transparent per-vCore pricing, monthly security patches from a registered CNA, and one vendor for the JDK and the application server.

Azul Core (Azul’s builds of OpenJDK, including Azul Zulu) is the Java runtime underneath Jakarta EE application servers. All major Jakarta EE runtimes are certified to run on OpenJDK. Azul Core provides commercially supported, regularly patched builds across all Java LTS versions.

Azul Prime brings C4 garbage collection and ReadyNow technology to Jakarta EE application servers, eliminating GC pauses and accelerating warm-up for high-throughput REST APIs and transactional workloads.

Azul Intelligence Cloud provides runtime dependency visibility for Jakarta EE applications, identifying which library versions are actively in use and flagging known CVEs.