[Seasar-user:18660] [s2junit4] s2junit4config.dicon があると単体テストでも ct でコンテナが初期化されてしまう
Shotaro Tsubouchi
[E-MAIL ADDRESS DELETED]
2009年 10月 16日 (金) 17:56:17 JST
坪内(shootaroo)です。
ut では jta.dicon、
ct では jta-wls10.dicon が使われるよう、以下のように設定しています。
s2container.dicon
---------------------------------------------------------------------------------
<components>
<include condition="#ENV != 'ut'" path="pathResolver.dicon">
</components>
---------------------------------------------------------------------------------
pathResolver.dicon
---------------------------------------------------------------------------------
<components>
<component class="org.seasar.framework.container.factory.SimplePathResolver">
<initMethod name="addRealPath">
<arg>"jta.dicon"</arg>
<arg>"jta-wls10.dicon"</arg>
</initMethod>
</component>
</components>
---------------------------------------------------------------------------------
通常ならこれで切り替わってくれるのですが、
S2TestMethodRunner を拡張する為に s2junit4config.dicon で設定を行なっており、
この状態で単体テストをすると、ut に切り替わる前の ct の状態でコンテナが初期化されてしまうようで、
jta-wls10.dicon が使用されてしまい、エラーとなってしまいます。
これは s2junit4config.dicon の内容によらず、
s2junit4config.dicon があるかどうかで挙動が違ってくるようです。
なにか代替案、回避策等ありますでしょうか。よろしくお願いします。
以下、s2junit4config.dicon がある場合と無い場合のログの抜粋です。
s2junit4config.dicon あり
---------------------------------------------------------------------------------
2009/10/16 17:17:59.059,環境変数#Envにファイル(env.txt)から値(ct)が設定されました
2009/10/16 17:17:59.059,S2Containerを作成します。path=hotdeploy.dicon
2009/10/16 17:17:59.059,S2Containerを作成します。path=convention.dicon
2009/10/16 17:17:59.059,S2Containerを作成しました。path=convention.dicon
2009/10/16 17:17:59.059,S2Containerを作成します。path=customizer.dicon
2009/10/16 17:17:59.059,S2Containerを作成します。path=default-customizer.dicon
2009/10/16 17:17:59.059,S2Containerを作成します。path=std-customizer.dicon
2009/10/16 17:17:59.059,S2Containerを作成しました。path=std-customizer.dicon
2009/10/16 17:17:59.059,S2Containerを作成しました。path=default-customizer.dicon
2009/10/16 17:17:59.059,S2Containerを作成しました。path=customizer.dicon
2009/10/16 17:17:59.059,S2Containerを作成します。path=creator.dicon
2009/10/16 17:17:59.059,S2Containerを作成しました。path=creator.dicon
2009/10/16 17:17:59.059,S2Containerを作成しました。path=hotdeploy.dicon
2009/10/16 17:17:59.059,S2Containerを作成します。path=pathResolver.dicon
2009/10/16 17:17:59.059,S2Containerを作成しました。path=pathResolver.dicon
2009/10/16 17:17:59.059,S2Containerを作成します。path=s2junit4config.dicon
2009/10/16 17:17:59.059,S2Containerを作成しました。path=s2junit4config.dicon
2009/10/16 17:17:59.059,環境変数#Envにファイル(env_ut.txt)から値(ut)が設定されました
2009/10/16 17:17:59.059,S2Containerを作成します。path=s2junit4.dicon
---------------------------------------------------------------------------------
s2junit4config.dicon 無し
---------------------------------------------------------------------------------
2009/10/16 17:46:29.029,環境変数#Envにファイル(env.txt)から値(ct)が設定されました
2009/10/16 17:46:29.029,環境変数#Envにファイル(env_ut.txt)から値(ut)が設定されました
2009/10/16 17:46:29.029,S2Containerを作成します。path=warmdeploy.dicon
2009/10/16 17:46:29.029,S2Containerを作成します。path=convention.dicon
2009/10/16 17:46:29.029,S2Containerを作成しました。path=convention.dicon
2009/10/16 17:46:29.029,S2Containerを作成します。path=customizer.dicon
2009/10/16 17:46:29.029,S2Containerを作成します。path=default-customizer.dicon
2009/10/16 17:46:29.029,S2Containerを作成します。path=std-customizer.dicon
2009/10/16 17:46:29.029,S2Containerを作成しました。path=std-customizer.dicon
2009/10/16 17:46:29.029,S2Containerを作成しました。path=default-customizer.dicon
2009/10/16 17:46:29.029,S2Containerを作成しました。path=customizer.dicon
2009/10/16 17:46:29.029,S2Containerを作成します。path=creator.dicon
2009/10/16 17:46:29.029,S2Containerを作成しました。path=creator.dicon
2009/10/16 17:46:29.029,S2Containerを作成しました。path=warmdeploy.dicon
2009/10/16 17:46:29.029,S2Containerを作成します。path=s2junit4.dicon
---------------------------------------------------------------------------------
Seasar-user メーリングリストの案内