[Seasar-user:6309] Re: S2Unit について
Yasuo Higa
[E-MAIL ADDRESS DELETED]
2007年 2月 23日 (金) 15:35:47 JST
ひがです。
> お世話になっております.長谷川です.
>
> 非常に基本的な部分で引っかかっています.
> S2Unit でのテストなのですが
>
> コンポーネントの登録自体は SMART deploy を利用していまして
> 適当な main から以下を呼び出すと
>
> SingletonS2ContainerFactory.init();
> S2Container container =
> SingletonS2ContainerFactory.getContainer();
> Object foo = container.getComponent("fooAction");
>
> コンポーネントが取得できます.
> #Action の instanceDef は PROTOTYPE に変更しています
>
> この状態で S2TestCase にて
>
> public S2Container container_;
>
> public void testFoo() throws Exception {
> container_.getComponent("fooAction");
> }
>
> と定義すると
>
> org.seasar.framework.container.ComponentNotFoundRuntimeException:
> [ESSR0046]コンポーネント(fooAction)が見つかりません
>
> となります.
S2TestCaseを継承したテストケースでは、
private FooAction fooAction;
とフィールドを定義しておけば、自動的にDIされます。
getComponent()を呼び出す必要はありません。
よろしくお願いします。
Yasuo Higa
The Seasar Project
Seasar-user メーリングリストの案内