Java EEの2つのバージョンを並行開発する
今回のJavaOneのタイミングに合わせ、OracleのJavaに対する取り組みについて説明する一部記者向け説明会が行われた。
Javaプラットフォームの開発グループ バイスプレジデントのジョージ・サーブ氏は、まずJavaOneの基調講演で発表されたOracle JDK+Dockerの話題に触れた。サーブ氏によれば、すでにJavaとDockerは一緒に使われている。Oracle JDKは人気のあるバイナリであり、Javaのコンテナ化に興味ある開発者をこれでサポートできる。詳細については今後改めて情報が出てくるが、この機能については間もなく提供されるものだと説明した。とはいえJavaのコンテナ化の方法は、もちろんこれが唯一の方法ではない。
Java EEの取り組みについて説明したのは、クラウドアプリケーションのエンジニアでグループバイスプレジデントのアニル・ガウァ氏だ。彼は今後クラウド向けのサービスへと大きく舵を切るJava EEのOracleの戦略について基調講演で説明した人物だ。彼は、まずJava EE 8、Java EE 9のロードマップを示したことを強調した。
「Javaを取り巻く世界が大きく変わりつつあります。分散型だったものが、マイクロサービス化してクラウドの中のアプリケーション開発に焦点を当てなければならなくなっています。ロードマップでは、これからはAPIを提供するものになり、セキュリティや拡張性を強化することを表明しました。さらにプログラミングモデルも変わりデータストリームの扱いやKey-Value型データをもっと簡単に使えるようにすること、イベント処理の強化といったものなども加わっています」(ガウァ氏)
この他には、クラウドで使うことを想定するとセキュリティ、マルチテナンシーが重要になるともガウァ氏は言う。セキュリティに関してはハイブリッドクラウドの環境で使うことを想定し、その際にも一貫したクレデンシャル情報が必要になると指摘する。また、マイクロサービスが数1,000といった規模で動くことを想定すればその管理が複雑になり、それに対処するにはマルチテナントの機能が必要になると説明する。このマルチテナント対応もJava EE 8に入る予定だ。
基調講演で明らかにされたこのロードマップでは、Java EE 8の最終版を2017年末までに提供し、翌2018年には早くもJava EE 9を提供する予定となっている。短期間でJava EE 9を提供するためには、Java EE 8と並行で開発することも表明している。このようにロードマップを示し、2つのバージョンの並行開発を明らかにしたことで、OracleがJava EEの開発にコミットしている証拠だと捉えて欲しいというのがガウァ氏の意向だ。つまりはこれがOracleの意向と言うことになる。このOracleの意向については、Javaのコミュニティサイドもある程度理解を示していると捉えて良さそうだ。
そんなコミュニティによる理解の裏付の1つが、基調講演の最後に登場した8社のパートナー、ユーザー企業からのエンドース発言だろう。ここには8人中4人が日本企業からの代表者で驚かされることになった。登壇したのは富士通 ミドルウェア事業本部 シニアプロフェッショナルエンジニアの数村憲治氏、日立 ICT事業統括本部 企画本部 事業企画部 部長代理の村上貴史氏、NEC クラウドプラットフォーム事業部 事業部長の岸上信彦氏、さらにはユーザーとして損害保険ジャパン日本興亜の取締役常務執行役員 浦川伸一氏で、彼らは今回示されたJava EE8、Java EE 9のクラウドへの対応やマイクロサービス化の方向性を基本的には支持する発言を行っている。
一方で、このエンドースメントのメンバーの中に、例年であれば必ず登場していたIBMやRed Hatがいないという現実も少し気になるところだ。Microprofileなどの開発でリードしている彼らがここにいなかったことは、まだまだ全面的にOracleの態度をコミュニティ各社が受け入れているとは限らないと想像してしまう。