2005-10-01から1ヶ月間の記事一覧

S2DaoのTIPS

引き続きメモ。 Pure Interface戦略 S2Daoのための定数アノテーションなどをinterfaceに書くと、クライアントクラスから見て不要なはずの定数にアクセスできたり、ちょっと気持ち悪いところもあります。 S2Daoではなく別のO/Rマッパーを使ったり、JDBCで実装…

S2DaoのTIPS

自分用メモ。 戻り値がbooleanのメソッドの振る舞い public boolean hasRecord();のように戻り値がbooleanのメソッドは、SQLの実行結果が0ならfalse、0以外はtrueとなるようです。 SQLをcount(*)で書けばレコードが存在するかどうかのチェックを簡単に実現で…

S2Daoに任せるメソッドと実装メソッドの共存

interface HogeDao { Hoge findByFooId(String fooId); Hoge findByBarId(String barId); }のようなインタフェースに対して、findByFooId()はS2Daoに任せたいがfindByBarId()は実装を書きたいという場合、どうするのがいいんでしょうか。 class HogeDaoImpl …

やっぱりJSFっていいのかも…

だんだん一度はあきらめたJSFが輝いて見えてきました。最近のサンプル開発遊びの中でもS2JSFでやったときが一番簡単にさくさくと進んだ気がします。 URL上で実ファイルパスを隠蔽できるような仮想パスの仕組みがJSFに入るとそれでOKな気もしてきます。でも実…

OzStrutsという選択肢

Struts in ActionのおかげでStrutsというものが結構理解できた。これでやっとStrutsの述語を使いこなせるというもの。今までがいい加減すぎただけか。Strutsがどれだけ素晴らしいかはよくわかったけど、実際のところそれで美しい設計でメンテナンスしやすいW…

MANIFEST.MFのCLASS-PATH

設定用のプロパティファイルをよくWEB-INF/confに入れたりするんですが、そうするとJavaクラスからはパス指定でアクセスすることになります。 もし、WEB-INF/confにクラスパスを通すことができれば、パスを意識しなくていいなぁと思いました。 でも、起動時…

遅ればせながら「Struts in Action」

今更ながらですが、買いました。最近プレゼンテーションフレームワークの比較検討をしてるんですが、結局判断基準はStrutsかなと。そのStrutsも断片的な知識しかなくてぜんぜんダメダメなので、各所で評判のStruts in Actionを読んで勉強しようと思いまして…

もう一冊「達人プログラマ」

これも今更ながらですが、未読だったので買いました。通勤電車で読もうかな。 達人プログラマー―システム開発の職人から名匠への道作者: アンドリューハント,デビッドトーマス,Andrew Hunt,David Thomas,村上雅章出版社/メーカー: ピアソンエデュケーション…

jsp-property-group

JSP2.0から導入されたという機能を試したかったんですが、全く機能しません。 最新のTomcat5.5.12で試してるんですが…。 <jsp-config> <jsp-property-group> <description>Special property group for JSP Configuration JSP example.</description> <display-name>JSPConfiguration</display-name> <url-pattern>*.jsp</url-pattern> <el-ignored>true</el-ignored> </jsp-property-group></jsp-config>

風邪

etc

引いた…。鼻水とくしゃみがつらい。

Jarに対するAspectAutoRegist

って、まだ対応してないだけなんですね。 "org.seasar.struts"になんでaspectがかからないんだーって悩んじゃいました。 さっきS2.3RC2のorg.seasar.framework.container.autoregistパッケージ配下の構成を見て気づきました。 JarComponentAutoRegisterが増…

S2Strutsの処理概要

ちょっと独自ルールで実行時のActionを切り替えたり、ActionMappingを差し替えたりしたいので、仕組みを追ってみました。 Struts経験が浅いので一部言っていることが怪しいかもしれないですが、大枠はそれほど外してないと思います。 ↓ 目的 一応、以下を実…

S2.3RC1の自動登録での怪しい挙動

別のパッケージに同じ名前のクラス名があるときに、org.seasar.framework.container.autoregister.DefaultAutoNamingでコンポーネント名を自動解決すると、バッティングしてコンポーネント登録に失敗するようです。 登録時にエラーにならず、コンポーネント…

S2Struts「拡張子」の英単語スペル

struts-config.xmlで、viewExtentionという属性があります。 htmlとかjspとかの拡張子をカンマ区切りで指定する属性ですね。で、綴りです。よくあるtypoのようですが、extensionが正解らしいです。「s」。 extentionではないと。 大きな問題ではないですが、…

WebアプリにおけるLog4jのログファイル出力先の指定方法

かなり前に悩んでたこと。単なる相対パスだとuser.dirが基点になるため、Tomcat起動方法によって実際のファイルパスが異なってしまいます。 開発環境でEclipseから起動したらECLIIPSE_HOMEが基点に。 直接Tomcatのbin/start.batを叩いたら、TOMCAT_HOME/bin…

S2Struts1.2の無設定カスタマイズ

無設定部分カスタマイズの要のZeroConfigActionRuleとZeroConfigActionFormRule。 適当にいじりながら、id:yuki_neko_nyanさんのダイアリーも読んででお勉強。 大体見えてきました。Actionに対する各種属性を解決するクラスであるZeroConfigActionRuleが一番…

S2Struts1.2EA2突入

というわけで、S2Strutsです。 id:yuki_neko_nyanさんの[Seasarする] - 猫的怠惰Daysを参考にまずはとっかかりを、と思ってたらいきなり問題に遭遇。今のS2Struts1.2EA2実装ってSeasar4 EA1を前提に実装されているみたいで、こないだ出たS2.3RC1だとエラーが…

無念

諸事情によりJSF路線をあきらめることにしました。 大きな理由は URLでページのディレクトリ階層構造を全部そのまま正直に表示されては困る MyFacesの動作がちょっと不安 ですかね。 POJOを使った仕組みなんか結構気に入ってたんですが。 実装が熟すまで待ち…

3.1.1+日本語化リソース

Seasar-userだったかな? 3.1.1と日本語化リソースが出てるということなんで、早速アップデート。 3.0はEclipse-wikiの有志リソースで日本語化してたので、新規インストールして設定を引き継ぐ。手順メモ。 [ファイル>エクスポート]の[設定]で全設定をエクス…

Aspectをメソッドに適用できるように

いいかげんな改造。本体じゃなくてS2Tiger側で。 org.seasar.framework.container.annotation.Aspect @Retention(RetentionPolicy.RUNTIME) @Target( { ElementType.TYPE, ElementType.METHOD }) public @interface Aspect { String interceptor(); String p…

Seasar2.3RC1を触ってみる

コンポーネント自動登録、アスペクト一括登録すげー。楽。 クラス名の規約を守ってれば、勝手に登録できるのってホント楽。 アスペクトもいろんなかけかたを簡単に実現できるし。使ってみようとしてちょっとはまった。原因は単純なこと。自動登録を使うとき…

ManagedBeanの作成単位

思わず吹き出した。最高。 443 :デフォルトの名無しさん :2005/08/08(月) 22:36:53 ManagedBeanって画面単位でつくってる? それともユースケース単位? 444 :デフォルトの名無しさん :2005/08/08(月) 23:25:54 気分単位。 うれしいBean たのしいBean か…

ServletFilterとforward処理

JSP2.3までだと、requestにしかfilterがかからない。 JSP2.4からrequestのほかに、forward,include,error時にもfilterをかけることができるようになったようだ。 参考 IBM からのお知らせ : 申し訳ございません。該当するURLのページが見つかりませんでした…

パッケージ構成

DTOがわからんとか、Entityって何よとか、自分の無知ブリを開けっぴろげにさらしてならない今日この頃ですが、僕は元気です。くーすで触れられていたことでまだgoyaとして言及されていない内容についても、今はgoyaと言った方がいいんでしょうかね。よくわか…

日記の向き

etc

これからは上の方が最新という向きに書いてみる。

エンタ!検定

etc

やってみた。 +++ 第1回 エンタ!検定 成績発表 +++ あなたの総合得点は64点 全国平均 60点 全国順位(10月8日 23時現在) 17911位(54115人中) −−ジャンル別得点表 −−−−−−−−−−−−−−− 0_________10__________20点 映画 ■■■■■■■■■…

S2Daoの結果をS2Unitでテスト

メモ。 RELNOアノテーションのプロパティ名でgroupを指定すると… S2DaoでN:1マッピングをするとき、1側のBeansに「group_RELNO, setGroup(), getGroup()」のようにgroupプロパティを指定したら、 org.seasar.framework.exception.SQLRuntimeException: [ESSR…

JSP記法との同居

一応確認してみた。だめでした。 ちょっとした機能を追加してみたいときでもタグライブラリ作って、m:injectする必要があるみたいです。残念。 <servlet-mapping> <servlet-name>jsp</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping>という記述を <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping>の前に書い…

エンティティとDTOという対比

くーす/goyaを意識しながらJSF/S2JSFをいじっていてやはり思うのが、エンティティとDTOの違いって?ということです。(ローカル)DTOというのは層またがりの場合に情報を受け渡しするために導入するものですが、くーすの文脈では、「DTO=プレゼンテーションモ…

S2Daoの「Primary keyが見つかりません」エラー

[EDAO0009]のエラーが発生する理由として、 A)DBのテーブルにpkが設定されていない場合 制約をきちんと指定すればOK。 B)PKのカラム名が間違っている (DB側 or JavaBeans側) カラム名をあわせるか、COLUMNアノテーションをかける。 C)テーブル名が間違ってい…