[Seasar-user:3875] Re: 独自作成Interceptorの使用方法

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2006年 6月 16日 (金) 14:03:49 JST


小林 (koichik) です.

Date:    Fri, 16 Jun 2006 13:11:23 +0900
From:    [E-MAIL ADDRESS DELETED]
To:       [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:3873] 独自作成Interceptorの使用方法

> 【出来ないこと】
> しかし、独自実装Interceptorで 閲覧者が保持している
> session の User コンポーネントを取得できません。

Interceptor はコンテナの初期化時にインスタンス化されて
しまいます.
例え Interceptor を prototype にしていても,リクエストの度に
新たなインスタンスが生成されるわけではありません.
そのため,session や request のコンポーネントはインジェクション
されません.

対策としては,独自実装 Interceptor のインスタンスモードを
prototype にして,InterceptorLifecycleAdapter を適用することで
session や request のコンポーネントがインジェクションされるように
なります.

詳しくは以下を参照してください.

S2AOP ドキュメントの「設定ファイルの説明」−「注意点」

http://s2container.seasar.org/ja/aop.html#AOPExplanationFile

S2AOP ドキュメントの「S2AOPで用意されているInterceptor」
                      −「InterceptorLifecycleAdapter」

http://s2container.seasar.org/ja/aop.html#InterceptorLifecycleAdapter

Seasar2 FAQ S2AOP 編

http://www.seasar.org/wiki/index.php?FAQ%2FS2AOP#z685b23f


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




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