[Seasar-user:9778] Re: [S2Dxo] 独自コンバータの登録に関して

o.h. [E-MAIL ADDRESS DELETED]
2007年 8月 8日 (水) 14:50:31 JST


長谷川です.

Koichi Kobayashi wrote:
> 
>> ですので、私の場合は ConverterFactory を独自実装のものに入れ替えて
>> 使っています.
> 
> Seasar2.4.15 からは ConverterFactoryImpl#setContainer() で
> 
>         this.container = container.getRoot();
> 
> となっているので,
> 
>> container.findAllComponents(Converter.class)
>>
>> となっているところを
>>
>> container.getRoot().findAllComponents(Converter.class)
> 
> これは同じ結果になりますね.
> # まさにこの問題に対処しようとしたわけですが.
> 

気が付いていませんでした.
ってことは独自の ConverterFactoryImpl はいらないってことですね.

ということで、元にもどした上で確認してみました.

1.Web コンテナ上で(COOL deploy です)
問題なく動作しました.

2.S2TestCase で(WARM deploy です)
問題なく動作しました.

> https://www.seasar.org/issues/browse/CONTAINER-62
> 
>> といった感じに修正することで SMART deploy 側のコンポーネントも
>> 登録されるようになりました.
> 
> COOL deploy では,ということでしょうか?
> HOT/WARM だと,そもそもコンバータが登録されて
> いないので,ルートから探してもコンバータを
> 見つけることはできないはず.
>

これなんですが、JUnit で使う場合は

@SuppressWarnings("unused")
private SomeConverter converter;

と明示的にロードしてもらうようにしています.
#これを記述しないと動かないです

本来は WARM deploy はサポートされていないのでしょうけれど、
とりあえず動作する+テストケースだけの問題なので上記の
warkaround で私のところでは満足しています.

以上.
-- 
_/_/
_/_/ mailto: [E-MAIL ADDRESS DELETED]
_/_/ (deprecated: [E-MAIL ADDRESS DELETED])
_/_/



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