[Seasar-user:12894] Re: 手動登録Componentから自動登録Componentを使用する

"TAKEUCHI Shinichi / 竹 "TAKEUCHI Shinichi / 竹
2008年 2月 15日 (金) 16:11:33 JST


お世話になります、竹内です。

  ひが様、小林様、ありがとうございます。

  ご指摘の通り、テストの場合が問題でした。
通常はapp.diconがルートになっているのですが、
テストの場合だけ異なってきます。しかも当方の
テストはJUnit4ベースのため、S2TestCaseを継承
していません。この場合はどう対処できるでしょうか?
ご指摘のGetterをテストクラス(POJO)に入れても効果なし
でした。

  また、XIncludeにしただけではテストケースの場合には
対処できそうもないのですが、、、テストも含めて常に
ルートに登録されるようにする方法はCreatorなどを自作
する以外にないのでしょうか?


On Wed, 13 Feb 2008 18:00:14 +0900
Koichi Kobayashi <[E-MAIL ADDRESS DELETED]> wrote:

> 小林 (koichik) です.
> 
> Date:    Wed, 13 Feb 2008 17:37:39 +0900
> From:    "TAKEUCHI Shinichi / 竹内 伸一" <[E-MAIL ADDRESS DELETED]>
> To:      <[E-MAIL ADDRESS DELETED]>
> Subject: [Seasar-user:12849] 手動登録Componentから自動登録Componentを使用する
> 
> >   調べてみると、Diconの包含関係が不適切で、自動登録された
> > Componentは作成したDiconよりも上位になってしまうために
> > 見えなくなるということが分かりました。
> 
> その通りです.
> 
> >   そこで、app.diconに直接定義を書いたのですが、やはり
> > 認識できませんでした。自動登録はRootに登録されてしまう
> > ようで、手動で同階層として定義する方法が見つかりませでした。
> 
> 通常は app.dicon がルートですが,違うのでしょうか?
> 
> ちなみに,S2(Framework)TestCase を使う場合はルートが
> dicon を持たないコンテナになり,app.dicon はそこに
> インクルードされます.
> もし S2(Framework)TestCase を継承したクラスで
> 起きている問題であれば,テストクラスに
> 
> protected String getRootDicon() {
>   return "app.dicon";
> }
> 
> を定義して,setUp() では app.dicon をインクルード
> しないようにしてください.
> 
> > 1)手動登録のDiconの中で s2container.dicon を include してしまう。
> 
> これはダメです.
> 
> > 2)独自のCreatorを作成して、creator.dicon に追加する
> >      例)指定のパッケージ内のクラスをなめて@Componentアノテーション
> >          のついているクラスをRootContainerに登録する
> >          (規約重視から設定重視になってしまいますが、
> >           パッケージばかり増えてもなーという場合は便利かも)
> 
> こちらでも RootContainer というのがよく分かりません.
> もしかしたら s2container.dicon を読み込んだコンテナの
> ことでしょうか?
> だとすると,それは app.dicon を頂点とするコンテナ階層とは
> 独立した存在です.
> 決して app.dicon を読み込んだコンテナの親ではありません.
> 繰り返しになりますが,通常は app.dicon がルートコンテナです.
> 
> 今ひとつ何をやっておられるのか状況が分からないので,
> 実際の dicon ファイルとログ等を見せてもらった方が
> よさげです.
> 
> 
> -- 
> <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
> 

-- 
TAKEUCHI Shinichi / 竹内 伸一 <[E-MAIL ADDRESS DELETED]>



Seasar-user メーリングリストの案内