java
最近合間を見てTapestryを触ってみてはいるんですが、いまいちなじめません。確かにテンプレートのシステムは素晴らしいのですがBasePageを継承してページ単位にクラスを作っていくのに違和感を感じます。 実務でWebworkを使っていて慣れてしまったせいかも…
Webのシステムを作っていて毎回問題になるのが、 同じブラウザを二個立ち上げて操作したときの対応。 セッションに値を入れた場合だと、同じキーで保存してしまうので後勝ちになってしまう。 hiddenで埋めて引きずり回せば各々で処理できるけどあまりhidden…
昨日のチェックボックスの問題は上手くやることで解決。 Tomcatでモジュール置き換えを何度もして再ロードをさせてるとOufOfmemoryErrorを起こしてる。 何が原因か良く分からないので、EclipseProfilerを入れてみた。 でも使い方が良く分からなかったので明…
webworkのチェックボックスではまる。 デフォルト値をfalseにしないとだめなのか? チェックボックスの値はチェックしてないとname=valueという値が来ないから、一旦裏でtrueを保持してしまうとチェックをはずすとずっとtrueのままになる。 デフォルトをfals…
今日はWebアプリでよくあるパターン 入力 > 確認 > 完了 をTapestryでやってみることにした。 結論から先に書くとうまくいきませんでした。 まず、Pageのプロパティを引き継がせてページを遷移させました。 入力 > 確認 は上手くいったのですが、 確認でパラ…
今まで実際にコードを書いたことがなかったのでTapestryのHPを見ながらプログラミング。 Spindle(unstable)もいい感じ。コードのバリデーションをやってくれるからスペルミスなどは未然に防げる。 エラーの表示も親切だ。JSPはServletに変換された後の行番号…
id:masataka_kさんの日記に興味深いことがいっぱい書かれていた。 (まさたかさん下で紹介しているソフト使ってみてはどうですか? いい感じで考えをまとめれますよ。既知でしたらすみません。) 今からからさわぎが楽しみだ。
Tapestryのpetshopサンプルを動かしてみた。 ヘッダーとフッターをどうやってインクルードしてるのかと思ったら、 セットで一つのコンポーネントになってた。 で、そのコンポーネントに中身を渡してた。 Tapestryを通さないとヘッダーとフッターは表示されな…
昨日のMiddlegenで吐き出された*.hbm.xmlに不具合があった。 テーブル名の終わりに「s」がついてると、「s」をのけた状態で作られるみたい。 原因を突き詰めたところ、middlegen Taskのオプションで singularize="false"というのを入れておけばいいみたい。 …
下記のプラグインを用いてDDLからマッピングファイルそしてJavaBeansまで生成してみました。 Clay HP DBEdit HP 手順 Clayでデータモデリングをして、DDLを作成します。 出来たDDLをDBEditで実行してテーブルを作成します。 Antでmiddlegenを使ってテーブル…
自分も何か作ってみようかなぁ。 フレームワークとかそういったものではなく、ツール的なものを。 案は一つ思いついているんだけど、もう少し煮詰めてみよう。 途中で止めないように育てていこう。 からさわぎまでにはプロトタイプ的なものを作り上げたいな…
one-to-many many-to-one とか面倒なので、HQLで直接DTOへ入れてしまおうと思います。 下記の3つのテーブルを結合したものをEmployeeDetail(DTO)へマッピングしたいと思います。 テーブル 社員 create table EMPLOYEE ( employeeid integer generated by def…
昨日の方法だと特定の場所にバインディングすることができないなぁ。 こんなとき こんにちはnameさんうーん ひがさんからS2JSFのアナウンスがされてた。
ひがさんがS2JSFの制作にとりかかったみたいですが、 どのような物ができあがるのか楽しみです。 デザイナとプログラマの分離がどのように実現されるのか? 前にも書いたけど、lintとかにも影響の出ないような物になるのかな。 タグにバインディング情報を書…
ソース追っかけました。 で、 「initial-value」を設定しているとこれを設定するPageDetachListenerがPageオブジェクトに登録されるようです。 で、Tapestryがしかるべきタイミングでdetach()メソッドを呼んで初期化を行うみたい。 BasePageをabtractで継承…
javassistでサブクラスを作って、そのクラスにプロパティを作ってそのアクセサメソッドを作っているところは見つけた。 Tapestryはこの自分で作ったサブクラスを管理するから、 abstractでBeanを書けってことなのかな。 で、勝手にinitialize()したりするっ…
あー面倒くせぇ。 insert(Object obj) update(Object obj) delete(Object obj) この三つはいいんだけど、 find(String hql) こいつが面倒。 期待した結果を得るのに時間がかかる。 上手く使い分けるのが得策かな。 Hibernateをバリバリに使いこなしている人…
以前書いたjavassistを使ったsetter/getterについてTapestry funさんからコメントがありました。TapestryはPageをキャッシュしているのでリクエストごとの初期化が必要とのこと。つまりこの部分を勝手に組み込んでくれるということなのかな。 時間ができたら…
1:Mだけやりました。 とりあえず動かすことはできた。 でも、まだ納得のいかない部分が残ってる。 その部分を解明しないと。 あと、最新のDBマガジンにHibernateの記事が載ってた。 その中で開発者のKing氏へのインタビューで、 「Hibernateはどんなときに使…
昨日立てたTODOは一つも実行されず・・・ 明日があるさ・・・
土日にやるTODOリスト Hibernateで1:1 Hibernateで1:M HibernateでM:M 時間あるかなぁ Tapestryの勉強もしたいんだけど、 業務でHibernateを使ってるからしょうがない・・・
TDDを目指してるんですが、時間がない&ひらめいたときって どうしても実装を先にしてしまう。 後からテストケースを入れようと思っても結局やらない・・・ というかテストケースが書きにくい。 ということはそもそものクラス設計おかしいということ? orz J…
Tapestry in Action作者: Howard M. Lewis Ship出版社/メーカー: Manning Pubns Co発売日: 2004/02メディア: ペーパーバックこの商品を含むブログ (6件) を見るアマゾンアフィリエイト 英語ができないのに背伸びして「Tapestry in Action」を見ながら 勉強し…
StrutsやWebwork、JSFなどいろいろなフレームワークがある中、 今更ながらTapestryを勉強中です。 jakartaのCVSを見たら最新は3.1alphaだった。 TapestryのWikiにも書かれていたけどHiveMindがIntegrateされるみたい。 HiveMindってなに? ちょっと調べてみ…
HibernateのHQLを使ってdeleteメソッドを呼ぶときだけど、 Queryオブジェクトを使ってできないのかなぁ? たとえば in を使う SELECT だと下記のようになると思います。 Query query = session.createQuery("from Object a where a.id in (:id)"); query.set…
で、問題が。 spring-xwork-integration.jarを使って連携しているんですが、 webappを再起動するたびにPostgresのコネクション数が増えています。 はじめはTomcatのDataSourceがいけないのかと思いましたが、 commons-dbcpを使っても同様の結果でした。 もち…
以前Webwork2で、VelocityToolが使えないと書きました。 今以前の日記を読み返したら理由を書いてなかった・・・ WebworkでVelocityToolServletを使用することは可能なのですが、 その場合、$stack、$webwork、$ognlが使えません。 VelocityToolが使えてWebw…
改めてマーチン・ファウラーの記事(日本語訳)を読み返す。 いまいちIoCの有効性が見えてなかった自分ですが、 なんとなく分かってきました。 今まで、インタフェースベースのプログラミングをしてなかったので、 余計にその恩恵というものが見えてなかったよ…
デザイナとのやり取りがいかにスムーズに無駄なく作業ができるかについて 会社のメンバーと少し話をしました。 デザイナさんにTapestryのタグを書いてもらえないか? もしくは後で置換するためのアノテーションを入れてもらえないか? ということを提案した…
今日はEclipseのプラグインで動作するJSFのエディタを入れてみました。 Exadelの JSF Studioです。 ここは、Struts Studio とか ORM Studio for Hibernateとか出してますね。 で、これは Sun Java Studio Creator のように画面をペタペタと貼り付けて作るこ…