[Seasar-user:18600] Re: 【S2Config】環境設定に依存した設定情報の読み込みがうまくいかない
Junichi Kato
[E-MAIL ADDRESS DELETED]
2009年 10月 8日 (木) 01:52:28 JST
黒瀬さん
加藤です。
お世話になります。
不具合を確認しました。
instanceがprototypeだとinitMethodが起動時に呼ばれない(getComponent時には呼ばれる)を忘れていました。
そこで、instanceがデフォルトのsingletonに戻しても使えるように内部ロジックを修正しました。
以下にスナップショット版を作成しましたので、ご確認いただけますでしょうか?
http://maven.seasar.org/maven2-snapshot/org/seasar/config/s2config-core/1.0.2-SNAPSHOT/s2config-core-1.0.2-SNAPSHOT.jar
http://maven.seasar.org/maven2-snapshot/org/seasar/config/s2config-example/1.0.2-SNAPSHOT/s2config-example-1.0.2-20091007.164727-1-sources.jar
2009年10月6日11:01 黒瀬健二 <[E-MAIL ADDRESS DELETED]>:
> 加藤さん
>
>
> 黒瀬です。お世話になります。
>
>> <component class="org.seasar.config.core.container.impl.ConfigContainerImpl"
>> instance="prototype">
>> <property name="configName">"log4j"</property>
>> <initMethod name="loadToBeans"/>
>> </component>
>
> ご指示いただいたように prototype を指定したところ現象が回避できることは
> 確認できたのですが、別の問題が発生しました。
>
> Log4JConfigTestクラスをJUnitで実行したところ、log4JConfig.category
> の値がnullと出力されてしまいました。
> (loadToBeansが実行されていない??)
>
> @Test
> public void test() {
> assertNotNull(log4JConfig);
> System.out.println(log4JConfig.category);
> ↑nullと表示される。
> }
>
> ちなみに、log4j.propertiesのenv=testの記述をコメントアウトし
> config.diconのinstance="prototype"の記述を削除していた場合
> (要はs2config-exampleのデフォルトの記述の状態では)正常な値
> (DEBUG, C) を出力していました。
>
> お忙しいところ申し訳ありませんが、再度ご確認頂けないでしょうか?
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
--
/**
* name : Junichi Kato
* email : [E-MAIL ADDRESS DELETED]
*
* blog : http://d.hatena.ne.jp/j5ik2o/
*
* commiting projects :
* http://jiemamy.org/
* http://s2chronos.sandbox.seasar.org/
* http://s2config.sandbox.seasar.org/
*/
Seasar-user メーリングリストの案内