JavaでWebページを書きたい!


ダイナミックにWebページが生成されるようなWebアプリケーションの作成を行うとき、皆さんはどのようにしているでしょうか。JSPにしろサーブレットにしろ、HTMLの表示部分は、結局HTMLで書くしかありません。それをダイナミックに操作しようとすると、ページを作るごとに同じような「HTMLを書き出すだけ」の処理をうんざりするほど繰り返さなければなりません。

JSPやサーブレットでページを生成する、それはなんともはや「Javaらしくない」作業です。オブジェクト指向とは全くこれっぽっちも関係のない作業。しかも、書いているのはJavaのコードというより、ほとんどがHTML。なぜ、Javaのプログラマが、JavaでWebを書けないのでしょう?

そうした考え方から登場したのが、Apache Projectの「Wicket」というフレームワークです。Wicketは、HTMLとJavaクラスでダイナミックなWebアプリケーションを作成するためのものです。というと、「なんだ、サーブレットなんかとたいして違わないんじゃないか」と思うかもしれません。

が、Wicketの「HTML」は、単なるテンプレートなのです。要するに、基本的なページ構造を記述したHTMLのテンプレートを使って、「Javaでページを作る」ためのものなのです。Wicketでは、ページに表示されるコンポーネントなどはすべてJavaのクラスで作成をします。そして、HTMLファイルに、「ここにこのコンポーネントを表示する」といった基本的な指定を記述したテンプレートを用意しておくと、このテンプレートを元にWebページをダイナミックに生成し表示します。

非常に重要なのは、このWicketは「サーブレットとして実装されている」という点です。つまり、一般的なサーブレットコンテナがあれば動くのです。もちろん、ごく普通のWebアプリケーションとしてプログラムは作っていけます。特にWicket対応の機能などは不要で、どんな開発環境でも、ライブラリを追加するだけでWicketによる開発が可能になります。

このWicketは、以下のWebサイトで公開されています。トップページにある「Welcome to Apache Wicket」というところから「Go and download Wicket.」のリンクをクリックしてダウンロードページに移動し、最新版を入手してください。(※なお、この記事はver.1.3.2をベースにして執筆しています)

http://wicket.apache.org/

WicketのWebサイト。ここからダウンロードページに移動し、最新バージョンをダウンロードする。


これがダウンロードページ。「Latest stable release」として最新版がアップされている。