米Sun Microsytems主催の技術カンファレンス「2007 JavaOne Conference」が8日(現地時間)からカリフォルニア州サンフランシスコのMoscone Centerで開催される。同カンファレンスは世界最大のJavaイベント。世界中から参加者が集まり、11日までの4日間、Java技術に関する様々な発表やセッション、ハンズオン、BOF(Birds Of a Feather)などが行われる。
Javaを支える企業の動向
初日となる8日のGeneral Sessionでは、SunのCEOであるJonathan Schwartz氏と、Executive Vice PresidentであるRich Green氏が講演を予定。Javaの将来に対するSunのビジョンが語られると期待される。
もっとも、現在のJavaは、Sunの意向だけで方向性が決まるものではなくなっている。Java周辺技術は元より、核となるJavaプラットフォームの仕様すらもオープンな場で議論され、世界中の開発者によって形作られるようになった。実装のオープンソース化も急速に進んでおり、各企業が自社技術をオープンソースコミュニティへ次々と寄贈しているうえ、Sun自身も長年の目標であったJavaのオープンソース化を昨年12月に実現した。
こうした大きな流れの中で、業界をリードする各ベンダーが今後どのような形でJavaに関わっていくのかという点は興味深い。2日目、3日目に予定されているOracle、Intel、MotorolaらプラチナスポンサーによるGeneral Sessionでは、その辺りの話題にも注目したい。
Java SE/EEの次期バージョン
技術面の話題に目を移そう。コア・プラットフォームに関してはJava SEおよびJava EEの最新版が昨年登場したばかりである。まずはこれらで追加された新機能の使われ方や浸透具合が気になるところだ。特にJava EE 5は、EJB 3.0などが導入され、エンタープライズ・アプリケーション開発の現場に極めて大きなインパクトを与えている。JavaOneでは、これらの技術を利用している世界中の開発者から、"現場の声"を直接聞くことができるはずだ。
さらに、先進的な技術者の間では、Java SE/EEの次期バージョンであるJava SE 7およびJava EE 6も話題に上がっている。Java SE 7については昨年のJavaOneでその概要が発表されたが、今年はさらに詳細な話を聞くことができるはずだ。
Java SE 7は、Java言語だけにとらわれず、より大きな枠組みのプラットフォームを目指している。そのため、「JSR 292: Supporting Dynamically Typed Languages on the Java Platform」のような動的言語のサポートや、XML構文のサポートといった新たな取り組みが行われている。また、クロージャやSuperpackage(JSR 294: Improved Modularity Support in the Java Programming Language)などの新しい言語仕様の導入も検討されている。
一方、エンタープライズJavaの次期バージョンであるJava EE 6については、つい1カ月ほど前にJCPに対して「JSR 313: Java Platform, Enterprise Edition 6 (Java EE 6) Specification」が提出された。これを契機に公式な仕様策定プロセスがすでにスタートしている。Java EE 6では、Java EE 5に引き続きSOAサポートを推し進めるとともに、「Java Authentication SPI for Containers」「Timer for Application Servers」「Work Manager for Application Servers」「Web Beans」「JAX-RS(Java API for RESTful Web Services)」といったAPIの追加が検討されている。また、EJBやPersistence API、JSF、JAX-WSなどの既存のAPIも更新される。
Javaオープンソース化の影響
その他、Javaのオープンソース化が業界に与えた影響なども気になるところだ。JavaOneではオープンソース化に関するセッションもいくつか予定されているうえ、オープンソース・コミュニティによるBOFもあり、市場の動向を知るまたとない機会だ。
現在、Javaは極めて広い分野をカバーするインフラに成長しており、その上で次々と新しい技術が生まれているため、全貌を把握するのはなかなか難しい。JavaOne開催中の4日間はそれらの情報が全て1カ所に集約される。どのような発表が行われるかについては、公式サイトで配布されているカンファレンスガイドなどで知ることができる。