[Seasar-user:6330] Re: コンテナに登録されているPOJOなクラスにインジェクトしたい

加藤 潤一 [E-MAIL ADDRESS DELETED]
2007年 2月 25日 (日) 12:59:20 JST



> > ComponentDef[] defs = s2container.findAllComponentDefs(“/.*Job/”);
> >
> > とさせるのはあまりよくないですかね? /がついているときだけPatternで
> 検索みたいな。
>
> ニーズ次第ではあるのですが...
> 〜Job クラスは必ず Job マーカインタフェースを実装するという
> 約束にしておいて,普通に
>
> ComponentDef[] defs = container.getAllComponentDefs(Job.class);
>
> で取得する方がいいのではないかという気のせいが.

あー、特定のインターフェイスを実装させたくないなと思っているだけなんですよねぇ。
コンポーネント名の命名規則や特定のmetaタグに指定しておいて検索するのはいいのですが。。。

> Teeda の場合,リクエストされた URL からコンポーネント名を
> 求めて,その名前で普通に getComponent() してるだけだと
> 思いますよ.複数の Page クラスを取ってくるようなことは
> してないと思います.

あー、ですよね。ソースみたらそのようになっていました。「Teedaのような…」というのは説明が悪かったです。すみません。
私がやりたいことは、「S2Containerに登録されているコンポーネントを、コンポーネント名の正規表現指定で検索し取り出したい」とことだけした。

> 普通に S2 コンテナに管理されてるコンポーネントのことなら
> Yes です.

はい。S2Containerに管理されているコンポーネントの前提です。



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