さまざまな軽量Javaフレームワーク

JavaによるWebアプリケーション開発では、いまだにフレームワークとしてStrutsやStrutsをベースにしたフレームワークが採用されるケースが多い。しかし、Ruby on Railsなどの登場もあり、Javaの世界でもApache Wicket、Grails、Click Frameworkといった軽量なフレームワークも注目を集めるようになってきている。今回はこれらの軽量フレームワークでの開発を支援するEclipseプラグインを紹介する。

Apache Wicket

Aache Wicketは設定ファイルレスのフレームワークで、HTMLとロジックの完全な分離を実現することができる。

Wicket向けのEclipseプラグインとしてWicket Benchが存在する。Wicket Benchは以下のような機能を提供している。

  • Wicketプロジェクト、パネルを作成するためのウィザード
  • HTML/Java/プロパティファイルをタブ切り替えで編集可能なエディタ
  • HTMLからJavaコードを自動生成する機能
  • クイックフィックス、リファクタリング機能
  • HTMLマークアップのバリデーション
  • JUnitの拡張機能

図1 タブでJava/HTMLの切り替えが可能

図2 HTMLからコード生成

Wicketは設定ファイルが一切存在しない代わりにJava側でやや複雑な記述が必要になる傾向がある。Eclipseが提供する強力なJava開発支援機能はWicketを使用する上で大きな助けとなることだろう。

Grails

GrailsはRuby on Railsにインスパイアされたフレームワークで、実装言語にはGroovyを使用する。

図3 Grailsプロジェクトをインポートしたところ

図4 Groovyエディタ

なお、Eclipse用のGroovyプラグインが存在するのでインストールしておくといいだろう。Grails向けのプラグインの開発も進められているようだが、現状ではプロジェクトの作成機能しか実装されていないようだ。またGrails用のプラグインを利用しない場合でも、Eclipse上でgrailsを外部ツールとして登録しておくという代替手段もある。

Click Framework

Click Frameworkは非常にシンプルながらコンポーネント指向/イベント駆動型のプログラミングを可能とするフレームワークだ。現在Apache Software Foundationでインキュベーション中であり、今後の普及が期待される。

ClickプロジェクトではClickでの開発をサポートするClickIDEというEclipseプラグインを開発している。ClickIDEでは以下のような機能が提供されている。

  • Clickプロジェクトを作成する機能
  • Clickの設定ファイルをグラフィカルに編集するためのエディタ
  • Velocityテンプレートエディタ
  • ページクラスとテンプレートを相互ジャンプ
  • ClickのドキュメントをEclipseのヘルプに統合
  • Apache Cayenneとの連携支援機能

図5 ページ作成ウィザード

図6 Velocityテンプレートエディタ

まとめ

Apache Wicket、Grails、Click Frameworkなどの軽量フレームワークは、いずれもWebアプリケーションをシンプルに開発することができるため、専用のツールを使用しなくても開発を行うことが可能だが、今回紹介したようなツールを利用することでより効率的に開発を行うことができるはずだ。軽量フレームワークを利用する際にはぜひこれらのツールを活用してほしい。