[Seasar-user:16551] Re: 任意のクラスのコンストラクタへのロジックのWeaving方法

Yasuo Higa [E-MAIL ADDRESS DELETED]
2008年 12月 25日 (木) 14:17:08 JST


ひがです。

> はじめまして。町田と申します。
> 
> この度、Webアプリケーションを作成するにあたり、初めて
> Teedaを使用させていただいております。
> 
> 質問させていただきたい内容としてはTeedaとは関係ないと思うのですが、
> 任意のクラスのコンストラクタが実行される前後にロジックを
> 織り込む方法です。
> 前提とする構成は
> ・Teeda : 1.0.13-sp4
> ・S2container : 2.4.32
> ・SMART Deployの推奨構成に従う
> です。
> 
> 想定する実装としては、ページクラスの生成時に
> ユーザ承認処理を織り込みたいと思っております。
> 
Seasar2では、コンストラクタにアスペクトをWeavingすることはできません。

> ある任意のメソッドが呼ばれた時点へのロジックの
> 織り込み方法については色々調べ、customizer.dicon
> にてpageCustomizerに対してMethodInterceptorを実装した
> interceptorを追加したAspectCustomizerを追加することで
> 対応出来ました。
> この方法でpointcutに"initialize"を設定し当初実装していた
> のですが、ページクラスにてinitializeメソッドが実装されていな
> かった場合、当然織り込んだロジックは呼ばれません。
> 
ページの親クラスを作り、そこにinitialize()を定義して、
initializeにpointcutを指定するのが、一番楽だと思います。


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