Three Steps to List Jakarta EE-Compatible Implementations

As most Jakarta EE developers are likely already aware, the concept of a single reference implementation (RI) to prove a specification can be implemented doesn’t exist in Jakarta EE. The Jakarta EE Specification Process (JESP) mandates there must be at least one compatible implementation (CI), but preferably as many as possible.

However, some developers may not realize how easy it is to have a Jakarta EE-compatible implementation listed on a specification page. Here are the high-level steps:

  1. Pass the technology compatibility kit (TCK) tests and publish the results.
  2. File a certification request.
  3. Submit a pull request (PR) to have your implementation listed.

And here’s a closer look at each step. We’re investigating ways to further simplify the process by automating some steps, but this is the process today.

1. Pass the TCK Tests and Publish the Results

Your software must pass the TCK tests for the specification you implement. The TCK can be downloaded from the specification page and is unique for each version of the specification (Figure 1). You can access the Jakarta EE specification pages here.

Figure 1: TCK Location Example

Figure 1: TCK Location Example

The next step is to publish the TCK test results. This is the heart of self-certification. Because you run the TCK tests and publish the results yourself, you don’t have to rely on others to run the tests for you. When you publish the results, you’re taking responsibility for their correctness.

For examples of how to publish TCK test results, check the results for the following:

After publishing the TCK test results, send an email to to make the Eclipse Foundation aware your software has passed the TCK tests.

2. File a Certification Request

The next step is to file a certification request in the Jakarta EE specification’s issue tracker.

A certification request must follow the template shown in Figure 2, and linked here, to provide the necessary information.

Figure 2: Certification Request Template

Figure 2: Certification Request Template

When a specification team receives a certification request, they verify the contents of the request, then add the certification label. For examples of certification requests, see:

3. Submit a PR to Have Your Compatible Implementation Listed

When the certification request has been approved, submit a PR to the specifications repository and add your implementation to the list of compatible implementations for the specification.

To add your implementation, update the file in the version sub-directory of the specification you’re implementing. For example, to add a new compatible implementation called OpenKangaroo 1.0.0 to the Jakarta Wombat specification, follow the format shown in the last line of Figure 3, marked with a +.

Figure 3: Compatible Implementation List Addition Example

Figure 3: Compatible Implementation List Addition Example

Get More Information

For a list of compatible implementations and the Jakarta EE compatible product they are included in, see Arjan Tijms’ list of implementation components used by Jakarta EE servers.

If you have any questions about the process, don’t hesitate to reach out to the Jakarta EE community through the Jakarta EE mailing lists.

About the Author

Ivar Grimstad

Ivar Grimstad

Ivar Grimstad is the Jakarta EE Developer Advocate at the Eclipse Foundation. He is a Java Champion and Java User Group (JUG) leader based in Sweden. Ivar is also involved in MicroProfile and Apache NetBeans, and is a frequent speaker at international developer conferences.