Jakarta™ EE 9紹介
富士通技術者ブログ~Javaミドルウェア~

2021年11月19日 初版
廣石 真也

「Jakarta EE 9」の紹介

2020年12月にJakarta EE 9がリリースされています。 以前紹介したJakarta EE 8に引き続き、遅くなりましたがJakarta EE 9について紹介します。

Oracle社がJava EE技術をEclipse Foundationに移管した際に、商標の扱いに以下の条件がありました。

Life at Eclipse」ウェブサイト内「Update on Jakarta EE Rights to Java Trademarks」より引用

The javax package namespace may be used within Jakarta EE specifications but may be used "as is" only. No modification to the javax package namespace is permitted within Jakarta EE component specifications. Jakarta EE specifications that continue to use the javax package namespace must remain TCK compatible with the corresponding Java EE specifications.

この条件によりJakarta EEで機能拡張する際には、Eclipse FoundationではJava EEで従来使われていたjavaxというパッケージ名は利用できず、jakartaというパッケージ名の利用が必要となりました。
この変更は、javaxパッケージのAPIを利用したアプリケーションやツールは今後のJakarta EEの実行環境では動作せず、jakartaパッケージのAPIを利用するように変更が必要となることを意味しています。
この変更のためにJakarta EE 9では、今後のJakarta EEへのツール対応の準備用にほぼ機能拡張は行われず、全てのAPIをjakartaパッケージに変更されたツーリングリリースとして公開されました。APIのjakartaパッケージへの変更は、Eclipse Foundation内では「ビッグバン(big bang)」と呼ばれ、Jakarta EEがオープンな活動として次の時代への扉を開く、シンプルですが重要な更新となります。

2017年秋にOracle社がJava EE技術をEclipse Foundationに移管することを表明し、2018年4月にJakarta EEワーキンググループが結成されて以来、Java EEからJakarta EEへの移管作業が進められてきました。Jakarta EE 8では仕様策定のルール作りや、互換認証用のテストキットの用意などが進められ、富士通をはじめとする主要なアプリケーションサーバーベンダーはもちろん、Javaコミュニティーのたくさんの方の支援により移管作業を完了させることができました。
Jakarta EE 9でjavaxというパッケージネームスペースを、jakartaというパッケージネームスペースへの変換が完了し、完全に移管作業が完了したことになります。

実際には変更されるのはパッケージ名だけでなく、以下が変更されます(「Jakarta EE 9 Specification」内の「12.1.1. Backwards Compatibility for Jakarta EE 9」より)。

javaxからjakarataにネームスペースが変更

全ての規約ドキュメント、API、Javadoc、TCK(Technology Compatibility Kits)、CI(Compatible Implementations)に対してネームスペースがjavaxからjakartaに変更されます。そのため、アプリケーションの変更が必要となります。例えばimportするパッケージをjakartaパッケージに変更する必要があります。

プロパティ

Jakarta EEの機能を構築する際に使用されるプロパティの多くはjavaxから始まっていたが、jakartaから始まるようになります。

スキーマ

Java EE機能を利用する際に定義していたXMLのスキーマは、"http://xmlns.jcp.org/xml/ns/javaee/"と"http://java.sun.com/xml/ns/javaee/"のネームスペースが利用されていましたが、jakartaネームスペースの更新により、Jakarta EE 9では"https://jakarta.ee/xml/ns/jakartaee/"に変更されます。

移行ツールについて

javaxパッケージのjakartaパッケージへの変更はアプリケーションの変更が必要となります。アプリケーションのソースコードを変更し、再ビルドすることをお勧めします。ソースコードの変更ができない場合には、Eclipse Transformer Projectでビルド済みのバイナリーファイルに対してパッケージを変更するツールも提供されていますので利用を検討ください。

今後に向けて

Jakarta EE 9でJava EE技術のEclipse Foundationへの移管が完全に完了しました。2022年3月に公開が予定(2021年11月18日現在)されているJakarta EE 10では移管後はじめての本格的な機能拡張が予定されています。どのような次の時代への扉が開かれるかご期待ください。

本コンテンツに関するお問い合わせ

お電話でのお問い合わせ

富士通コンタクトライン(総合窓口)

0120-933-200

受付時間:9時~12時および13時~17時30分
(土曜日・日曜日・祝日・当社指定の休業日を除く)

Webでのお問い合わせ

当社はセキュリティ保護の観点からSSL技術を使用しております。

ページの先頭へ