Jakarta EE and the Payara Platform

Shaping the future of the industry through our direct contributions to the Jakarta EE Working Group, as Eclipse Foundation Contributing Members, and as members of the Project Management Committee.

What is Jakarta EE?

Jakarta EE can be defined as a set of open source specifications that enables Java developers to work on cloud native Java enterprise applications. Jakarta EE was formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE).

Jakarta EE specifications are either grouped into a platform specification (Full or Web Platform) or can be an individual specification.

Regardless of the grouping all Jakarta EE specifications consist of

  • APIs and Specification document – defining and describing the specification
  • Technology Compatibility Kit (TCK) – used for testing the code implemented based on the APIs and Specification document
  • Compatible Implementation – implementation that successfully passes the TCK

As enterprises modernize their infrastructure for cloud, microservices and containers, the technological transformation requires a new governance model that provides faster release cycles to keep pace with innovation, along with an open source, community-driven evolution of the platform.

As Contributing Members of the Eclipse Foundation, we’re dedicated to helping shape the future of open source, and continuously invest our resources and expertise to the improvement, innovation, and development of open source technologies and Jakarta EE. Our involvement allows us to support the sustainability of the community, participate in marketing programs, and have direct access to the governance of both the Jakarta EE Working Group and the Eclipse Foundation. Steve Millidge, Director of Payara, is also a Project Management Committee member of Jakarta EE. The Payara team are also contributing to optimizing Enterprise Java for microservices architectures to help enterprises make their journey into the cloud, working closely with customers to shape Jakarta EE to meet their future needs, and are active committers to the Eclipse MicroProfile initiative.

Jakarta EE and Payara Platform

User Guides & Tutorials

Jakarta EE 10: What Decision Makers Need to Know

Jakarta EE 10 higher level focus

Jakarta EE 10 is HUGE NEWS.

It is the first release since Jakarta EE (then Java EE) was donated to the Eclipse Foundation that actually brings new features. Old APIs are getting removed; consistency is being added; and the new Core Profile is meeting user needs when it comes to microservices, by creating a foundation for RESTful microservices.

Download Guide

Dismiss the Java Myths: Get to Know the Real Jakarta EE

Dismiss the Myths eBook front cover

Java was created in 1995 and despite being over 25 years old, it’s still one of the most popular and widely used programming languages in the world. Due to its longevity – many myths around Java EE (now Jakarta EE) have circulated. In this eBook, we’ll discuss the most common myths and show you why the programming language is still relevant, how it keeps up with the changes in the IT world and show there is a future in Jakarta EE.

Download eBook

Dismiss the Myths: Get to know Jakarta EE

dismiss the myth

In our “Dismiss the Myths” webinar series, we discuss the common myths surround Java EE / Jakarta EE and show you the programming language is still relevant, keeps up with the changes in the IT world, and that there is a future in Jakarta EE.

You can see all the videos from the Webinar series here:

Full Playlist

Jakarta EE 10 in 3 Minutes

Jakarta EE 10 in 3 minutes

It’s important you know what Jakarta EE 10 means if you work in the world of enterprise and middleware Java. In this video, we explain all in 3 minutes.

Watch Video

From the Payara Blog

  • Intercepting REST Requests With Jakarta REST Request Filters 14 Mar 2023

    Oftentimes in web applications, there is the need to intercept a request from the client to resource methods. Sometimes this interception must take place even before the request is matched to a resource method. For such needs, Jakarta REST provides the jakarta.ws.rs.container.ContainerRequestFilter interface. This interface is a Jakarta REST extension that can be used to intercept requests to resource methods. An implementation of this interface can decide if requests should be intercepted before they’re matched to resource methods through the @PreMatching annotation. A pre-matched request filter will be invoked by the container before the request is matched to its intended resource method. For this blog post, let us look at two use cases for request filters. One is a situation where for security reasons, certain HTTP methods are not allowed. For example an organisation can have a security rule in its firewall that disallows HTTP PUT methods. In this case, either all methods have to be POST or request filters can be used to workaround the restriction. The second situation is for the custom implementation of authentication. Of course you absolutely should NOT hand-roll your own security setup unless you know in detail exactly what you are doing. You are better off using tried and tested security frameworks and services out there. But for this blog post, assuming we need to implement custom security, we can use a pre matching request filter. The following code snippet below shows a ContainerRequestFilter implementation that implements the two scenarios above.

  • How to prevent runtime type erasure using GenericEntity in Jakarta REST in Jakarta EE 10 09 Mar 2023

    Java generics is a great feature that allows you to have compile time checks for generics. However, due to historical reasons of backward compatibility, type information for generics is erased at runtime. A lot of the time this shouldn’t be of much concern. But there are a few cases where type information is needed at runtime for some kind of decision. One such situation is in Jakarta REST when the jakarta.ws.rs.core.Response object is used to return a generic collection of a specific type. For example the code below shows the creation and return of a Response object that has a list of HelloEntity as the return payload to the client. 

  • Returning Beautiful Validation Error Messages In Jakarta REST With Exception Mappers 07 Mar 2023

    All non-trivial enterprise applications have some sort of constraints on the data the application processes. These constraints could range from the simplest to the most complex custom built types. The default validation API on theJakarta EEPlatform, Jakarta Bean Validation has excellent out of the box support for constraining bean fields. Then with its @Valid annotation, you can trigger automatic validation of constrained objects in certain points of an application. 

  • Payara Monthly Catch: February 2023 01 Mar 2023

    We are here with a carefully curated reading list! We put together the best content from the world of Java, Jakarta EE, cloud computing and open source.  TL:DR - if you work with enterprise Java software, you'll find something here for you. 

  • 🔥NoSQL Persistence on The Jakarta EE Platform With Google Firestore🔥 28 Feb 2023

    SQL isn't your only option!    Document NoSQL databases store data as document objects, much like JSON objects. Google Firestore is a document database, a NoSQL database offering from Google’s Firebase service. You store your data in documents that are collected into collections. This guide will introduce you to incorporating Firestore NoSQL database into your Jakarta EE application.

  • A Business Guide to Enterprise Development Options on the Java Platform 23 Feb 2023

    What is an Enterprise Application? What is an Enterprise Development Platform? What are the features of a good Development Platform? ... and most importantly, what are your options in Java?

More Jakarta EE Blogs

Back to top