[Seasar-user:2967] Re: Seasar2.3.1 から2.3.3へ移行すると、diconのinitMethodのregisterAllが使えなくなるのでは?(質問)

Yasuo Higa higa
2005年 11月 30日 (水) 13:53:29 JST


<[E-MAIL ADDRESS DELETED]> の、
   "[Seasar-user:2964] Re: Seasar2.3.1から2.3.3へ移行すると、diconのinitMethodのregisterAllが使えなくなるのでは?(質問)" において、
   "beans no <[E-MAIL ADDRESS DELETED]>"さんは書きました:

ひがです。

> nobeansです。
> 
> ちょっと気になったのはAspectアノテーションの検出ロジックです。
> 2.3.1までは、直接ソースのクラス定義のところで@Aspect("dao.interceptor")などとアノテーションをしかけておいて、そのクラスをFileSystemComponentAutoRegisterで拾い上げると自動的にアスペクトが適用されていました。AspectAutoRegisterをかけなくても、です。(自動検出じゃなくて直接component定義しても、たぶん同じですよね。)
> 
> で、2.3.1→2.3.2にあげた結果、diconファイルは全く変更していないのに、Aspectアノテーションが拾われなくなったんです。
> 
> Aspectアノテーションというのはdiconファイルにかかなくても、ソース中だけでアスペクト定義をかけるのがメリットだと思っているので、この使い方であっていると思っていますがどうでしょうか。
> 
> AspectAutoRegisterはアノテーションとは無関係の機能で、複数のクラス(コンポーネント)に対して一気にアスペクトを適用するための手段ですよね。
> 
> 上記の使い方であれば、本来AspectAutoRegisterは不要だと思うのですが…。
> 
Aspectアノテーションを使うのであれば、AspectAutoRegisterは不要です。
が、確かに、*ComponentAutoRegisterを使ったときに、Aspectアノテーションが
無効になっていました。m(_ _)m
修正しました。
次のバージョンで反映されます。

Yasuo Higa
The Seasar Foundation



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