Apache Tapestryのメモ
- 長いことチェックしてなかったのでメモ
Link
Webレイヤに求める機能リスト(前提としてAjax以前で)
- 遷移
- データのPOST
- 入力検証
Tapestryの概要
- JSPは、使用しない
- プレーンなHTMLまたはXHTMLが使用でき、ページ内の動的要素の部分はDiv/Spanで指定しておく
- 上記のDiv/Span要素へ、Java Web Component(JWC)の記述をする事で、HTML要素とJavaオブジェクトをBindさせ動的なデータ表示を行う。すなわちHTMLがTemplateとなる。
- 上記のJWCがデフォルトで多数用意され。開発者はHTMLとJWC記述・Javaオブジェクトで開発をする。
- ページ単位にオブジェクトを割り当てるのでなく、HTML上の要素に(またはその集合)に割り当てるイメージか?
- また、JWCは独自のコンポーネントの作成も可能
他のフレームワークとの違いとウリ
- JSPを使用しないので、タグ地獄から開放される。
- ウワサによると、JSFなどより相当早いらしい。
- 実行してから初めてHTMLが出来上がるJSPベースのフレームワークと違い、基本的に素のHTMLを使用するので、HTMLデザインツールなんかが使える。
Tapestryアプリの構成要素
- Servletベースのフレームワークで、開発者は下記の要素を作成する
- web.xml
- htmlファイル
- Javaオブジェクト
- app.application(htmlとJavaオブジェクトのマッピング。対応Javaパッケージ名のみの記述可能。ページとJavaオブジェクトのマッピングは半自動)
Versionの変遷
- 現在、Ver4。今までのVersionはメンドーなので追わないが、Ver4では下記の機能が確認できる
- JDK5のAnnotationの使用
- HiveMindの導入(おそらく、上記のapp.applicatonのマッピング等のDI機能で使用か?)
- Ver4.1では、Dojoを使用したAjax機能が追加される予定。
Tapestryをサポートするフレームワーク
- S2Tapestry
- Springframework
- ''上記のFWを使って、どんなメリットあんのか? 後で調べる''
Tapestryの画面遷移
- TODO
TapestryのFormの扱い
- TODO
Tapestryの入力検証
- TODO
State(状態)の持ち方
戻るボタンやF5などへの対処
-