谷本 心 in せろ部屋

はてなダイアリーから引っ越してきました

S2JSF

S2JSFでWebParts その11

おまたせ。 紆余曲折あったけど、「insertをforEachで繰り返す」事は単純には出来ないので、 insertタグに自前で属性 (m:items) を追加して、m:itemsが入力された場合は複数繰り返す m:srcの値(式言語)がCollectionだった場合には複数繰り返す の、いずれ…

s:insertにパラメタを渡したい。

insertついでに、もう一つ。 某先輩から「insertタグにパラメタを渡したいんだよねー、できるよね?」と プレッシャー込み(笑)で質問されたので、ちょっと試してみた。 呼び出し側のHTML(抜粋) <span m:inject="s:insert" m:src="hoge.html"> <span m:inject="f:param" m:name="hoge" m:value="ほげ"/> </span> 呼び出される側のHTML(抜粋) <span m:inject="s:insert"> <span m:value="#{hoge}"/> </span> JSPのincludeと同…</span></span>

S2JSFでWebParts その10

forEach + insertの組み合わせで、 insertのm:srcに式言語を使えない問題について。 S2のMLには投稿したんだけど、その原因が、だいたい分かった。 平たく言うと、 forEachタグがレンダリングされる(繰り返し処理が行なわれる)より前に、insertタグが解釈…

S2JSFでWebParts その9

パーツ状態の永続化の前に、ちょっと技術解の調査。 どうやって、動的にパーツ(HTML)を入れ替えるのか? を考える。 カスタムタグや、TagProcessor辺りのソースを読みながらも 結局は s:insertのタグをforEachで回す のが一番簡単だと気付く。 いまは出来…

S2JSFでWebParts その8

Teeda for Portletに衝撃を受けつつも、 とりあえず、僕は僕で、JetSpeedの概念や使用感などを参考にしながら、 S2JSFで使えるWebPartsを、さくっと作ろうと思う。 本気でPortletを学ぶのは、それからでも遅くないでしょ。 てか、最小化、最大化なんて、忘れ…

S2JSFでWebParts その7

サンプルの説明にも書いた通り、「Add」とか「ForEach」は問題なく動くけど、 「Employee」のサンプルは別画面に遷移してしまう。 要は、メソッドバインディングされるActionの中で、「return null」するものは問題ないけど、 「値を返す」ようなものは別画…

S2JSFでWebParts その6

文字ばっかじゃ伝わらないので、現状までを公開。 Servlet動かせるようなレンタルサーバを持ってないので、ダウンロードしてね。 (削除済み) 動かし方。 S2JSF-Example 1.0.14を実行できるようにする。 上記URLよりS2JSF_WebParts1.zipをダウンロード、解…

S2JSFでWebParts その5

複数のInitActionが呼び出せない件について、一歩前進。 複数のHTMLファイルを1画面に表示させたいので <span m:inject="s:insert" m:src="hoge.html"/>こんな風にしてHTMLファイルを呼び出す予定だけど、 呼び出される側のHTML(hoge.html)では、initActionが実行されなくて困っている。 と言うわけで、Ini</span>…

m:extendsでVB式が使えるようになるらしい

おっ、寝る前にちょっとメール見てたら [Seasar-user:3786]あたりで、m:extends属性でVB式記述がサポートされるって。 これで、WebPartsの動的レイアウト変更がやりやすくなった。 さて、あとは各Parts(HTML)のInitActionをどうやって呼ぶか、だなー。

S2JSFでWebParts その4

困った。 S2JSFのHTMLでは、 <span m:inect="s:insert" m:src="/employee/employeeSearch.html"/>なんてやっても、 呼び出される側(employeeSeach.html)のInitActionが実行されない。 <iframe m:src="/s2jsf-example/employee/employeeSearch.html"/>変わりにIFrame使っちゃえば、もちろん、InitActionは実行できるけど、 今度はドラッグ&ドロップが激しく重くなる。 さてと、 InitAction</iframe></span>…

S2JSFでWebParts その3

S2JSF-WebPartsが目指すところは、リッチなポータル構築(のサポート)。 例えば、googleのパーソナライズド ホーム を簡単に作る。 ユースケースで考えると、こんな感じ。 ユーザは、「レイアウト」を変更する 上にヘッダ、左にメニュー、右に本体 左右にメ…

S2JSFでWebParts その2

続けて、先のドラッグ&ドロップをs2jsf-exampleに適用。 とりあえず、/WEB-INF/layout/layout.htmlを餌食にしてみた。layout.htmlの先頭にScriptタグを入れて、 <head> <meta http-equiv="Content-Type" content="text/html; charset=Windows-31j" /> <link m:inject="s:link" rel="stylesheet" type="text/css" href="/css/global.css"/> </link></meta></head>

S2JSFでWebParts その1

前にちょこっとだけ書いたけど、S2JSFでWebPartsライクな機能を作ってみようと思う。 元の発想はASP.NET2.0のWebParts。 ポータルサイトなどで、ユーザがUIをカスタマイズできるもの。 カスタマイズ画面では、好きなパーツ(HTML)を、好きな位置にドラッグ&…

複数フィールドバリデータ考

Strutsに比べて、最近のJSF系Webフレームワークで困るのが、複数フィールドのバリデータ。値を入れないとバリデーションしないとか、S2CompareValidatorだけだと最後のフィールドにバリデータを設定しなければいけないのが厄介。 とは言っても、いつまでもス…

S2CompareValidatorをいじってみる

こないだのSeasar Conferenceで、Teedaの仕様決めに参加させてもらったんですが、その時にS2JSFの複数フィールドバリデータについて、ちょっといいこと教えてもらったので、早速トライ。S2CompareValidatorの75行目付近を、こんな風に改造。 Object targetVa…