ぺんぎんらぼ

お笑いとマンガ好きなしょぼしょぼWeb系エンジニアの日記です。たまに絵を描きます。

お笑いとマンガ好きなしょぼしょぼWeb系エンジニアの日記です

Jakarta EE (Java EE)のバージョン情報

2022/9に、5年ぶりのメジャーバージョンアップであるJakarta EE 10が発表されました。

いろいろと変更が入っていますが、注目すべき点としてはCDI 4.0で、Enterprise Bean (EJB) の代替手段がCDIに用意されたことです。これにより、今まではプレゼンテーション層のコンポーネントCDI、アプリケーション層はEJBで実装、もしくはCDIEJBをうまく混ぜて実装していましたが、CDIに統一して実装することができます。

今回は、Java EE 8からJakarta EE10までのコンポーネントのバージョンをまとめます。

サポートするJavaのバージョン

Jakarta EEのコンポーネントバージョンの前に、サポートするJavaのバージョンをまとめます。

リリース日 サポートするJava SEのバージョン
Java EE 8 2017-08-31 Java SE 8
Jakarta EE 9 2020-12-08 Java SE 8
Jakarta EE 9.1 2021-05-25 Java SE 11
Jakarta EE 10 2022-09-13 Java SE 11

見ての通り、2020年12月にリリースされたJakarta EE 9まではJava SEのバージョンが8でした。ちなみにJava SE 8のリリース日は2014年3月です。
2021年5月にリリースされたマイナーアップデートであるJakarta EE 9.1で、やっとJava SEのバージョンが11まで引き上げられました。

コンポーネントのバージョン

Jakarta EEは複数のコンポーネント(正確には仕様)の集まりで、各コンポーネントごとのバージョンを持ちます。
代表的なコンポーネントのバージョンは以下の通りです。

Jakarta EE 10 Jakarta EE 9 Java EE 8
Jakarta Contexts and Dependency Injection (CDI) 4 3 2
Jakarta Servlet 6 5 4
Jakarta Server Pages (JSP) 3.1 3 2.3
Jakarta Faces (JSF) 4 3 2.3
Jakarta RESTful Web Services (JAX-RS) 3.1 3 2.1
Jakarta WebSocket (WebSocket) 2.1 2 1.1
Jakarta JSON Processing (JSON-P) 2.1 2 1.1
Jakarta JSON Binding (JSON-B) 3 2 1.1
Jakarta Enterprise Beans (EJB) 4.0 4.0 3.2
Jakarta Persistence (JPA) 3.1 3 2.2

サポートするアプリケーションサーバのバージョン

Jakarta EEは仕様であり、その仕様に沿って実装されたアプリケーションサーバが各ベンダーや団体から提供されています。
2023年3月時点、Jakarta EE、Java EEの実装状況は以下の通りです。

Jakarta EE 10 Jakarta EE 9 Java EE 8
GlassFish 7.0.0 6.0.0 5.0
Oracle WebLogic Server 14.1.1
Open Liberty 22.0.0.13 21.0.0.12 18.0.0.2
WebSphere Liberty 23.0.0.12 21.0.0.12 18.0.0.2
WildFly 27.0.0 23.0.1 v14.x
JBoss EAP v7.2
Payara Server 6.2022.1 6.2021.1

Jakarta EE 10はリリースされて間もないこともあり、実装されたアプリケーションサーバは少ないですが、フリーソフトウェアの実装もあることから、手軽に試すことができます。