CodeZine(コードジン)

特集ページ一覧

最近のJavaEE事情
~Java EE 6の向かう先~

Java EE 6の仕様はこうなる!

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2008/10/21 14:00

目次

新たに含まれるAPI

 次にこのバージョンから新たに含まれる技術に注目します。

WebBeans

 Java EE 5ではEJB 3.0によりDependency Injection(DI)の考え方が取り入れられ、EJBコンテナはDIコンテナの機能を持つようになりました。一方、Web層にも標準フレームワークとして「JavaServer Faces(JSF)」が取り入れられましたが、ここで利用されるBeanの管理もコンテナにより参照を注入できるなど、DIコンテナとしての機能を持っています。このように、Java EEの世界には2つのDIコンテナがあり、それに合わせたプログラムモデルが提供されています。

 「WebBeans」はこの2つのコンテナを統合し、統一的なプログラムモデルを提供する仕様です。WebBeansにより、JSFのページからEJBのBeanのメソッドを呼び出すことが可能になります。そのため、Webアプリケーションの構成要素をより少なくできます。

 またWebBeansには、アプリケーション、セッション、リクエストなど従来のスコープに加え、「カンバセーションスコープ」が追加される予定です。これにより、一連のページにまたがるクライアントとのやり取りを、1つのスコープとして管理できるようになります。

JAX-RS

 Webアプリケーションの分野では、他のサービスが提供する情報を取り込み、1つのアプリケーションとして構成するようなタイプのアプリケーションが増え始めています。このような外部から利用されるサービスを提供する際に、HTTPの仕組みを利用したRESTfulなWebサービスをAPIとして公開する方法があります。Javaでも、このようなRESTfulなサービスを公開するためのAPIとして「Java API for RESTful Web Services(JAX-RS)」が提供されます。

 JAX-RSでは、アノテーションを用いてJavaのプログラムにマークすることにより、そのメソッドをRESTfulなサービスとして提供することが可能になります。このように、Java EEも新しい分野のアプリケーションへの対応を進めています。

Java EEのカバーする範囲

 Java EEは、これまでさまざまな新しい仕様を取り込んで発展してきました。J2EEの最初の仕様が出てから既に長い時間が経ち、進歩の中で過去のものとなってしまった技術もあります。

 従来、Java EEの仕様はこのような過去の仕様も互換性のために保持されていましたが、Java EE 6では「既に過去のものとなってしまった仕様は削除する」という方針を初めて打ち出しました。そのため、JAX-WSに置き換わったJAX-RPC(Java API for XML / Remote Procedure Call)とJPAの登場により、役割を終えた「EJB2.x CMP EntityBean」が仕様から削除される予定です。

 現在のJava EEの仕様は多岐にわたります。多くの開発の現場において、フルセットのJava EEを使い切ることはなかなか難しくなっています。そのため、Java EE 6から「プロファイル」という考え方を導入し、Java EEのサブセットを作成できる仕組みを作ろうという動きが出ています。

 その手始めとしてJava EE 6では、「Webプロファイル」というサブセットが提供される予定です。このWebプロファイルでは、ServletやJSPなどWebアプリケーションに必要な仕様を切り出し、プロファイルとしてまとめて提供されます。現在、EJBの軽量版やJSF、WebBeansなどを含めるかなど、このWebプロファイルの範囲について議論が進んでいます。

まとめ

 これまで見てきたように、ここ数バージョンのJ2EE/Java EEで提唱されていたEoD(Ease of Development:開発の簡略化)の流れを踏襲し、より簡単に開発が進められるような方向にJava EE 6の主要な技術は進化しています。

 当初の予定ではJava EE 6のリリースは今年の第4四半期だと言われていましたが、来年初頭から春先になる可能性が高そうです。Java EE 6の仕様策定の進み具合に関してあまり目立った動きが見えませんが、仕様を策定しているエキスパートメンバーなどのBlogを読むと、少しずつ参照実装のプロダクトが動作している様子が見て取れます。これからリリースに向けて、より多くの情報が見えて来ることを期待しましょう。

  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 河村 嘉之(カワムラ カズユキ)

     1999年にメーカー系ソフトウェア開発会社に入社。サーバ・サイドJavaを中心にさまざまな開発プロジェクトに携わった後、オープンソース・プロジェクトを中心に新技術の調査を担当する。2008年にオープンソースCRMに移籍し、現在はオープンソースのCRMソフト「SugarCRM」を核にしたビ...

あなたにオススメ

All contents copyright © 2005-2022 Shoeisha Co., Ltd. All rights reserved. ver.1.5