Servletベースの軽量Webアプリフレームワーク Content Creation Framework

米IBM alphaWorksは9月30日(現地時間)、Servletベースのウェブアプリケーション開発フレームワークであるContent Creation Frameworkを公開した。Content Creation Frameworkは、ウェブアプリケーションにおいて"コンテンツ"と"プレゼンテーション"を分離するための非常に簡素な枠組みを提供する。すなわち、アプリケーションの提供する機能(コンテンツ)はJava技術を用いて開発者が作成し、インタフェースを作成するデザイナーはHTMLを使用してそれを"見せる"という作業(プレゼンテーション)のみを行う。

一般的に、デザイナーはJava技術そのものについてはそれほど明るくなく、一方で技術者はHTMLによるデザインを得意としないと言われており、既存のウェブアプリケーション技術のようにJava技術とHTMLが混在する枠組みは実際の開発では好ましくないとされてきた。

そこで、次の3つのコンセプトをベースにしてContent Creation Frameworkが開発された。

  • コンテンツとプレゼンテーションの分離が確実に行われる
  • Servletを隠蔽することのないシンプルな設計
  • オーバーヘッドが少なく軽量。使用/理解するのが容易

特にコンテンツとプレゼンテーションの分離についてはJSP(JavaServer Pages)なども同様の機能をサポートしているが、JSPの場合実際にはHTMLとJavaコードが混在していても問題はない。一方Content Creation FrameworkではHTMLとJavaコードの混在は許可されず、完全な分離が必要となる。

Content Creation Frameworkの本体は「Hamlet」と呼ばれるServlet拡張である。Hamletではプレゼンテーションに使用するテンプレートをXHTML形式のファイルで記述する。これをSAX(The Simple API for XML)を利用して読み込み、その際に動的にコンテンツを埋め込む。HamletのXHTMLにはコンテンツを埋め込むための特別なタグが用意されており、このタグとid属性による識別子を用いて、コンテンツとテンプレートの関連付けを行う仕組みになっている。

Content Creation Frameworkはソースコードにすると500行に満たない非常にシンプルで軽量なフレームワークで、導入も極めて容易である。Content Creation Frameworkを動作させるには、IBM WebSphere Application ServerやApache Tomcatなどの、Servletコンテナを持つウェブアプリケーション・サーバが必要となる。



人気記事

一覧

イチオシ記事

新着記事