[Seasar-user:6431] Re: 存在しないクラスをコンポーネントに

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2007年 3月 1日 (木) 17:00:20 JST


小林 (koichik) です.

Date:    Thu, 01 Mar 2007 11:30:38 +0900
From:    "o.h." <[E-MAIL ADDRESS DELETED]>
To:       [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:6422] 存在しないクラスをコンポーネントに

> で、そのシステムには ClassLoader#findClass で特定の名前のクラス
> が指定された場合(実際には存在しないクラス名)既存のクラスを継承
> したクラスを作成するような仕組みが入っています.
> #javassist を使っています
> 
> で、どうせならばそこらへんも S2 のフレームワークで何とかならないか
> と考えています.
> 
> コンポーネントとして認識できれば interType で何とかできるのでは
> ないかと考えているのですが、こういったことは実現可能でしょうか

「特定の名前のクラス」が,固有のインタフェース
あるいは抽象クラスを持っているなら可能です.

SMART deploy では (というか COOL deploy では),
クラスファイルが見つかると,それを自動登録
するようになっています.
そのため,インタフェースでも抽象クラスでも
構わないのですが,コンポーネントとして
認識するためのクラスファイルが必要です.

もし固有のインタフェース等があるなら,
それをコンポーネントとすることで,
インタータイプを適用することができます.

しかし,複数の「特定の名前のクラス」が
共通のインタフェースや抽象クラスしか
持っていないようだと,SMART deploy で
扱うことはできません.
# HOT/WARM のみでよければ不可能でもないですが.


--
<signature>
   <name>Koichi Kobayashi</name>
   <e-mail>[E-MAIL ADDRESS DELETED]</e-mail>
</signature>




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