2022/9に、5年ぶりのメジャーバージョンアップであるJakarta EE 10が発表されました。
いろいろと変更が入っていますが、注目すべき点としてはCDI 4.0で、Enterprise Bean (EJB) の代替手段がCDIに用意されたことです。これにより、今まではプレゼンテーション層のコンポーネントはCDI、アプリケーション層はEJBで実装、もしくはCDIとEJBをうまく混ぜて実装していましたが、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 | 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はリリースされて間もないこともあり、実装されたアプリケーションサーバは少ないですが、フリーソフトウェアの実装もあることから、手軽に試すことができます。