第一回wicket勉強会
2008年08月02日(土) 02:06
「じゃ」の仲間として、当然第一回wicket勉強会に行ってきたですわ。
¥r¥n会場はXarts株式会社 東京オフィス、後楽園駅の目の前の素敵なオフィスでした。通年採用しているそうですよ。
¥r¥n
眠くて整理できないので、「いんたーねっとましーん」で頑張ってとったメモをはっつけておく
¥r¥nつーか、30人のwicket勉強会に藤沢南側住民が3人もいるとかwww
¥r¥n¥r¥n
世界のt_yano
¥r¥nメモリの問題:同じページオブジェクト内では現在の状態以外はセカンドレベルキャッシュと呼ばれるファイルに格納される。セカンドメモリキャッシュはデフォルトで5コのキャッシュが保持される。次のページに移った場合には前のページの状態は直前のままのこり、次のページのバージョン1が生成される。
¥r¥nTeedaにあるような、セッションの境界がどこかにあるのか気になったけど、Teedaにさえも本当にそんなものがあったか自身が無かったので聞いてみることはせず。まぁ、いいや。
¥r¥nクラスタリング:セッション同期ができていればきちんとセカンドレベルキャッシュも同期される。ただしサーバが落ちた場合にはwicketでは同期を再開するすべが無い。コミッタはサーバで対処すべき問題だといっているらしい。
¥r¥nAjax:コンポーネントの更新=DOMの更新。behaviorを参照のこと。課題:コンポーネントの追加が困難。10コのリストに一つ追加したい場合には11コのオブジェクトを返すしかない。DOMのIDを破壊してしまう。
¥r¥n
¥r¥nメッセージ:プロパティがデフォルト。ページと同じ名前でプロパティファイルを作っておく。同じ名前だけ?バリデーションに引っ掛かるとページの変数には値が入らない。かつ、そのさきのバリデータも走らない。
ループのいらない部分はwicket:removeというタグでくくる。htmlとしての表示は変わらない。
¥r¥nAjaxを使った複数要素のインタラクションもJavaのコード上で表現できる。例えばCHECKBOXをチェックするとSELECT要素の中身が変わるような場合、CHECKBOXにBehaviorを設定し呼ばれた時点でSELECTのインスタンスをいじると、HTMLも変更される。
¥r¥n¥r¥n
たけうちさん
¥r¥nIComponentResolverをimplementsするとhtmlに存在するwicketidがページクラスになかった場合に、そのオブジェクトを引数に特定のメソッドを呼び出してくれる。TAGにいんちき属性をつけておけばそれもとれるので、動的にいろいろ出来る(その場でコンポーネントを作って追加できる)。
¥r¥n(wicket web beanというのを使うとhtmlを書かないで良くなるらしい)
¥r¥n¥r¥n
ぎしさん
¥r¥n千歳科学技術大学のひと。
¥r¥nJSF+Springからwicketに技術を変えたら教育コストが1/4、トータル開発期間が1/6に減った。
¥r¥n利点:UI用のタグが出てこないので出来上がりが想像しやすい。XMLがほとんど出てこない。設定の分散が無い。Struts時代は6000行。JSF+Spring時代でも2000行だった。
¥r¥n月間残業時間が130時間から60時間になった。
¥r¥n¥r¥n
けいすけん
¥r¥nなぜかscala。一応scalaからwicketを使うときっと楽に書ける。って話しのふりしてやっぱりscala。
¥r¥nimmplicit conversionはおもろいと思うんだけど、コードを同構成したら見やすいのかな。
¥r¥n¥r¥n
たなかさん
¥r¥n2年も前にwicket採用。いつの間にか社内の標準フレームワーク。
¥r¥nデザイナがHTMLいじってそのままsvnに入れてくれるようになった。
¥r¥neclipseからjettyで動作確認してからってのが熱い。djangoと同じ話しだ。
¥r¥nモンハン始めたらしい。← 狩りに生きましょう:)
¥r¥n¥r¥n¥r¥n