谷本 心 in せろ部屋

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

WebParts

S2JSFでWebParts その17

「insertされたHTMLのinitAction実行」をコミットしました。 ちょっとコミッタ内で相談している点はありますが、 恐らく、次のバージョンから利用できるようになります。 また、insertを利用したサンプルも一緒に公開される予定です。 次の目標としては、 in…

S2JSFでWebParts その16

さて、リフレッシュしたことだし、 「insertで呼び出されたHTMLの、InitActionを実行する」の続き。 まず、やりたい事を整理すると、 親画面 子画面1 (m:inject="s:insert"タグで挿入。以下同様) 子画面2 子画面3 こんな構成の画面を作ったとして、 子画面の…

S2JSFでWebParts その15

script.aculo.us周辺のアレコレは、ちょっと置いといて、 「insertで呼び出されたHTMLの、InitActionを実行する」という処理を 正式にS2JSFへコミットするために、最後の調整。 何かって言うと、呼び出されたInitActionで、 例外が発生した 戻り値がnull以外…

S2JSFでWebParts その14

WebPartsのHTMLでは、同じレイアウト(m:extends)を使うことになるはず。 「閉じる」ボタンとか、「最大化」ボタンとかって、共通的なものだし。 そうすると、<span m:inject="s:insert" m:src="#{xxxList}"/> を使って読み込んだ時に、 insertされる側(Parts側)のページで、m:extends属性を解釈する必要</span>…

S2JSFでWebParts その13

S2JSF WebPartsの動かせるサンプルを公開します。 今回のサンプルで出来ること ドラッグ&ドロップで、パーツ(HTML)を動かすことが出来る 保存ボタンを押して、パーツの位置を(セッションに)保存できる もちろん、HTMLに書いてあるinitActionが呼び出される …

S2JSFでWebParts その12

どうやら、出来た模様。 m:srcに文字列を指定 → 今まで通り、srcで指定したファイルを読み込む m:srcにVB式で文字列を指定 → 解釈後の文字列を、srcとしてファイルを読み込む m:srcにVB式でCollection/配列を指定 → 解釈後の配列を、すべてsrcとしてファイル…

S2JSFでWebParts その11

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

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>…

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)を、好きな位置にドラッグ&…