S2JSFでWebParts その3
S2JSF-WebPartsが目指すところは、リッチなポータル構築(のサポート)。
例えば、googleのパーソナライズド ホーム を簡単に作る。
ユースケースで考えると、こんな感じ。
- ユーザは、「レイアウト」を変更する
- 上にヘッダ、左にメニュー、右に本体
- 左右にメニュー、中央に本体
- 本体のみ、など
- ユーザは、メニューに表示したい「コンポーネント」を選択する
- カレンダ
- 検索
- 最近のコメント、など
- ユーザは、コンポーネントの位置をドラッグ&ドロップで変更する
- システムは、各ユーザのレイアウト、コンポーネントの位置を記憶する
- 開発者は、複数のレイアウトを提供する
- 開発者は、複数のコンポーネントを提供する
実現方法は、こんな感じ。
- レイアウト
- 第一案は、extendsするHTMLを動的に変更する。
- 第二案は、レイアウトごとにアクセスするHTMLを変える。
- コンポーネント
- 1HTML + 1InitAction + 1Action + α
- それぞれのコンポーネントは独立したアクション、ロジックを使う
- ドラッグ&ドロップ
- script.aculo.us
- 表示位置は永続化
だいぶ、できそうな予感がしてきた。