「いずれは,ブラウザで利用するWebアプリケーションと,リッチ・クライアント・アプリケーションの境界はなくなる。モバイル機器もパソコンも区別なく同じ技術でリッチなユーザー・インタフェース(UI)を構築できるようになるだろう」。2005年3月10日,東京で始まった「Java Computing 2005 Spring」の基調講演で,米Sun Microsystems社のCraig McClanahan氏が将来のJavaアプリケーションの姿を予見してみせた。McClanahan氏は,Webアプリケーション構築用のフレームワーク「Struts」や「JavaServer Faces(JSF)」の開発責任者である。

 JSFは,JavaによるWebアプリケーション開発における標準技術となりつつある。2004年3月の正式仕様公開以来,多くの統合開発環境に採り入れられた。McClanahan氏はまず,ここに至るまでのJavaのWebアプリケーション開発技術を振り返った。Servlet,JSP(JavaServer Pages),Strutsと,「開発作業を容易にするために,技術は移り変わってきた」(McClanahan氏)。そして行き着いたのがJSFだという。「既存のコンポーネントを組み合わせてアプリケーションを作り上げる開発者(Corporate Developer)でも使いやすいこと,開発ツールとの親和性が高いことが必須。クライアントのデバイスに依存しないこと,スケーラビリティが高いことなども求められた。こうした背景があって,JSFが生まれた」(McClanahan氏)。

 JSFは今後も進化を続けるという。将来の展望を,短期,中期,長期にわたって示した。まず短期的には,JSFはJ2EE(Java2 Platform, Enterprise Edition)の一部になる。中期的には,JavaScriptなどを利用したコンポーネントを用意し,動きのあるUIを実現できるようにしたり,モバイル端末への対応を強化する。これはJSF 2.0としてリリースされるという。そして長期的には,いわゆるリッチ・クライアント構築技術と融合する。具体的には,インターネットを利用してJavaアプリケーションをユーザーに配布する「Java Web Start」や,SwingのUI部品とネットワーク上のデータを結びつける技術「JDNC(JDesktop Network Components)」などとの融合を考えているという。つまり「SwingのUI部品とJSFのコンポーネントを統合していく」(McClanahan氏)。サーバー側のプログラムを大きく変更することなく,UI部品を入れ替えるだけで,リッチ・クライアント・アプリケーションとブラウザを使ったアプリケーションとを実現できることになる。

(八木 玲子=日経バイト)