経緯
Spring MVC 圧勝とのこと。 / http://t.co/FIhhw50f8x
— hiroisojp (@hiroisojp) 2014, 12月 1
を見て、Java – Top 10 Java-based Web Frameworks for 2014-2015にVaadingが入っているのにWicketが入ってなくてなんかユーザとして悔しいので、ちょっと触ってみようかなと思った。
Mavenプロジェクトの作成
vaadinのdownloadにmavenのプロジェクト作成コマンドが載っていたので、素直に実行する。
$ mvn archetype:generate \
-DarchetypeGroupId=com.vaadin \
-DarchetypeArtifactId=vaadin-archetype-application \
-DarchetypeVersion=7.3.5 \
-Dpackaging=war
プロパティ情報を求められるので、入力。(version, packageはデフォルトのままにした)
Define value for property 'groupId': : com.exmaple
Define value for property 'artifactId': : vaadin-sample
Define value for property 'version': 1.0-SNAPSHOT: :
Define value for property 'package': com.example: :
[INFO] Using property: theme = mytheme
Confirm properties configuration:
groupId: com.example
artifactId: vaadin-sample
version: 1.0-SNAPSHOT
package: com.example
theme: mytheme
Y: : Y
無事にmavenプロジェクトが作成できたら、jettyで動かしてみる。
$ cd vaadin-sample
$ mvn jetty:run
無事に起動したら、http://localhost:8080/ にアクセス。
動いてないじゃないすか!やだー!
Failed to load the widgetset (after clean installation)
mvn vaadin:update-widgetset install
を頼りに、上のコマンドを実行してからもう一度jettyで動作させる。
今度は起動した。ボタンを押すとメッセージが増える。
そのほか
(以下、さっと検索してみた上での所感なので、間違いがあるかもしれません)
Wicketはコンポーネント指向を取り入れて、HTMLテンプレートをサーバサイドのJava(だけ)で書き換えるイメージだけど、VaadinはJavaでHTML(つまりUI)をまるごと生成してしまおうっていうイメージなんだね。そういえば軽量フレームワークが流行り始めた頃に、WicketやClickと対比されてた気もする。
IDEプラグインも充実してるみたいなので、使い勝手がよければ開発はもちろん、やろうと思えば大学のソフトウェア作成体験学習みたいなものにも使えるかもしれない。
あとClickListenerとかJava8で書けるっぽいのが素敵。
でもatWare,「みなルミーナ」の中のお話(Vaadin)によれば、モバイル向けのサービスを作るためには$590/developerのVaadin TouchKitが必要だという情報を見てちょっと萎える。せめて1桁少なければ...
Wicketと同じように体系的な入門ドキュメントは(英語だけど)公開されてるみたいだから、ちょっと追ってみようかな。