[Seasar-user:15300] Re: 【Teeda】sessionのDIについて
Koichi Kobayashi
[E-MAIL ADDRESS DELETED]
2008年 8月 7日 (木) 17:30:26 JST
小林 (koichik) です.
Date: Thu, 7 Aug 2008 17:10:51 +0900
From: r.m <[E-MAIL ADDRESS DELETED]>
To: [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:15298] Re: 【Teeda】sessionのDIについて
> ------------------ApplicationInitializer------------------
> SingletonS2ContainerFactory.init();
> S2Container container = SingletonS2ContainerFactory.getContainer();
> container.init();
> -----------------------------------------------------------
>
> この部分を削除すると、ApplicationInitializer 初期化処理内の後続処理において
> 例えば MasterInfoDao(マスター情報取得用)を取得する場合
> container.getComponent(MasterInfoDao.class)
> では、コンテナーがまだ初期化されておらず、コンポーネントが取得する事が出来ません。
> 通常こういった利用はしないのでしょうか?
しません.
Dao を自分で取りに行くのではなく,DI してもらうのが
通常の使い方です.
public MasterInfoDao masterInfoDao;
注意点としては,Dao を AutoRegister で
自動登録している場合,ApplicationInitializer は
AutoRegister よりも後に定義する必要があります.
--
<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 メーリングリストの案内