StrutsとJSFは、同一アプリケーション中に共存可能である。web.xmlにActionServletとFacesServletの両方を登録し、StrutsとJSFの両方の機能を同一アプリケーション中に混在させることも可能だ。
また、Apache Strutsプロジェクトでは、StrutsからJSFのUIコンポーネントを使うためのStruts-Facesという機能を開発している。まだ開発途上だが、将来のバージョン(Struts2.x?)に取り込まれる可能性もある。これが実現されると、Controller周りが充実しているStrutsと、Viewが充実しているJSFの良いところ取りとなるだろう。StrutsもJSFも、Craig R McClanahan氏が中心人物として動いていることもあり、実用化する可能性が高いだろう。
普及度、書籍やWebサイトによる情報量、対応している開発ツール、すでに使えるスキルを持ったエンジニア数などの点で、現在はStrutsが優勢な状況だ。
しかし、JSFは標準仕様なので情報量や対応する開発ツールはこれから増えることが期待できる。
本稿のサンプルで扱ったようなプレーンテキストによるJSFアプリケーションの開発は、JSFのアーキテクチャを理解するには有効だが、JSFはIDEで利用することでその真価を発揮する技術といえる。JSF対応のIDEを使うと、簡単なマスタメンテ程度のアプリケーションならJavaプログラムのコーディングをほとんどせずに作成可能だ。
また、JSFのUIコンポーネントは容易に拡張、作成が可能なため、開発ツールベンダー各社からリリースされているIDEは、それぞれ独自の高機能なUIコンポーネントを用意している。JSFアプリケーションを作成するにあたり開発者が身につけるべきことは、JSF APIの使い方よりもIDEの操作方法だと言っても過言ではないのだ。
現在はベンダー各社が独自機能を搭載したIDEをリリースしており、デファクトスタンダードと呼べる製品が存在しない状況だが、オープンソースコミュニティーによるJSF対応の開発ツール、高機能なEclipseプラグインなどが出てくれば状況は変わるかもしれない。
Copyright © ITmedia, Inc. All Rights Reserved.