[Seasar-user:1659] Re: クラスローダを指定してS2Containerを生成

Yasuo Higa higa
2005年 3月 22日 (火) 12:11:05 JST


<20050322113401.D070.TAKEHIKO @ eel.rdc.toshiba.co.jp> の、
   "[Seasar-user:1658] クラスローダを指定してS2Containerを生成" において、
   "Yokota Takehiko <takehiko @ eel.rdc.toshiba.co.jp>"さんは書きました:

ひがです。

> 横田です。
> 
> クラスローダを指定してS2Containerを生成したいと思ったのですが、
> S2ContainerFactory.create(String path)ではクラスローダを指定すること
> ができません。
> 
> そこでいろいろ調べてみたところ、S2Containerを生成するものを定義する
> インタフェースS2ContainerBuilderというものがあることを発見しました。
> これがbuild(String path, ClassLoader classLoader)というメソッドを持っ
> ているため、このメソッドを使えば所望のことができそうだと思いました。
> 
> ところが、S2ContainerFactoryはS2ContainerBuilderのbuild(String path)
> を呼び出してS2Containerを生成するメソッドは持っていてもS2ContainerBuilder
> のbuild(String path, ClassLoader classLoader)を呼び出してS2Container
> を生成するメソッドは持っていないようです(S2.2.3で確認)。
> 
> そこで質問なのですが、クラスローダを指定してS2Containerを生成したい
> 場合はどうするのがセオリーなのでしょうか。また、S2ContainerFactory
> がcreate(String path, ClassLoader classLoader)メソッドを持っていな
> い何らかの理由があるのでしょうか。
>
ClassLoaderを指定したいという比較的プリミティブな要求は、
XmlS2ContainerBuilderを直接呼ぶようにすればいいじゃんという
考えがあるためです。
一般的に使われるS2ContainerFactoryはできるだけ機能を
絞ったほうが混乱しないだろうという気持ちもあります。
---
ひがやすを(http://d.hatena.ne.jp/higayasuo/)


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