[Seasar-user:15308] Re: 【Teeda】sessionのDIについて
r.m
[E-MAIL ADDRESS DELETED]
2008年 8月 7日 (木) 20:59:06 JST
小林様
水澤です。
privateで宣言し、setter getterを用意しております。
>これは app.dicon でしょうか?
はい、app.diconに記述し、初期化しております。
>HOT deploy でしょうか? それとも COOL deploy
でしょうか?
Cool deployで行っています。
>いずれの場合も,本来なら
>DSSR0105 クラス(TestDao)のコンポーネント定義を登録します
>というようなログが出力されるはずなので
こちらですが、マスター情報処理起動時には出力されず
一番最後に出力されます。
ここまでで、試しましたが
やはりDaoが取得されませんでした。
>また,app.dicon に TestDao を明示的に定義した場合はどうなるでしょうか?
こちらを試したところ、Daoが取得できましたが
ログには DSSR0105 クラス(TestDao)のコンポーネント定義を登録します は出力されず
やはり処理後に出力されました。
当面、上記の明示的に定義するパターンで
実装したいと思っておりますが、何か懸念点等ありますでしょうか。
こちらの環境など分かり辛い中、教えて頂き有難うございます。
宜しくお願い致します。
> 小林 (koichik) です.
>
> Date: Thu, 7 Aug 2008 18:25:20 +0900
> From: r.m <[E-MAIL ADDRESS DELETED]>
> To: [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:15304] Re: 【Teeda】sessionのDIについて
>
>> private TestDao testDao;
>
> setter メソッドはありますか?
> private フィールドは (そのままでは) DI の
> 対象にはなりません.
> public にするか,setter メソッドを追加するか,
> @Resource (または @Binding) アノテーションを
> 指定するかのいずれかが必要です.
>
>> サーバー起動時にInitializeをする設定をdiconに追加
>
> これは app.dicon でしょうか?
> SMART deploy の場合,Dao が自動登録されるのは
> ルートのコンテナ (app.dicon) であるため,
> Dao を使用するコンポーネントも app.dicon に
> 登録する必要があります.
>
>> これでやったところ、testDaoがDIされませんでした。
>
> HOT deploy でしょうか? それとも COOL deploy
> でしょうか?
>
> いずれの場合も,本来なら
>
> DSSR0105 クラス(TestDao)のコンポーネント定義を登録します
>
> というようなログが出力されるはずなので
> 確認してください.
>
> また,app.dicon に TestDao を明示的に定義した
> 場合はどうなるでしょうか?
>
> <component name="testDao" class="...TestDao">
> <aspect>dao.interceptor</aspect>
> </component>
>
>> やはり、initializeの時には、Daoを用いた初期化は出来ないのでしょうか。
>
> そんなことはありません.
>
>
> --
> <component name="koichik">
> <property name="fullName">"Koichi Kobayashi"</property>
> <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
> <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
> </component>
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
Seasar-user メーリングリストの案内