[Seasar-user:464] Re: コンストラクタによるコンポーネント生成で問題
B gluegent.com Masataka Kurihara
kurihara
2004年 3月 11日 (木) 13:29:59 JST
栗原です。
> なるほど、<component initMethod="init">と<method name="init">は
> 同じなのね。知らなかった。(藁
違うのは、メソッドのほうは引数が渡せるんですよね。これは大きな
自由度だと思います。また、教えてもらった複数呼べるというのも、使
うのは前の例示のような特殊ケースぐらいだと思いますが、自由度が高
いです。
> 今は、インスタンスモードがprototypeの場合、initMethodは呼ばれず、
> methodタグは呼ばれるという中途半端な仕様になっているので、
> initMethodは呼ばれるが、destroyMethodは呼び出されないという
> 仕様に変えておきます。
>
> prototypeの場合、destroyMethodを呼び出せないのは、
> インスタンスがコンテナ管理外のためです。
> Springがどうなっているか後で調べてみます。
なるほど。まだprototypeはまったく見てませんが、ぱっと思いつき
的にはWeakReferenceでリリース時にコールバックしてくればよいよう
な気がします。。。が、バイトコードエンジニアリングしないといけ
ないのかな?なんかスマートな手はありそうですね。
シンプルにできるならば、prototypeでもdestroy呼べたほうが良いと
は思います。
--
株式会社グルージェント
栗原 傑享(くりはら まさたか)
渋谷区渋谷3-7-6 第6矢木ビル4F
TEL:03-5469-8869 FAX:03-5469-8879
URL:http://www.gluegent.com/
--
Seasar-user メーリングリストの案内