[Seasar-user:6026] Re: S2Container のリソース破棄について質問

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2007年 2月 5日 (月) 19:46:26 JST


松原です。

 早速のご返信大変有難うございます。

ご教示頂いた「RemoveSession」アノテーションは非常に便利なの
で、このアノテーションによってカバーできる箇所には採用したい
と考えています。

ですが、当方の説明不足で大変申し訳ございません。あるタイミ
ングで破棄という処理は、ライフサイクルに追加したPhase-list
enerのRenderRsponsePhase(afterPhase)にてセッションDTOを破
棄したいと考えています。

【基本概念】
 同一ページ(JSP)内だけで有効なセッションDTOを実現したい。
 ページ(JSP)が変わったタイミングである特定のセッションDTO
 を破棄したい。

【対処方法】
 同一ページ内であるかは、PhaselistenerでViewIdとsubmitted
 ViewIdが変わっているかというトリガーで実装している。
 この処理の中で、特定のセッションDTOを破棄したい。


以上です。説明不足で大変申し訳ございません。

>ひがです。
>> 
>>  お世話になっております。松原です。
>> 
>>  現在、Seasar2のフレームワーク使用したプロジェクトを
>> 以下の設定下で検討しているのですが、S2ContainerでDIさ
>> れたリソース(セッションのクラスオブジェクト)を破棄
>> する方法をご教示頂けないでしょうか?
>> 
>>  ・Seasar2フレームワークのTeeda-Coreを採用
>>  ・スマートデプロイを採用
>>  ・スマートデプロイ環境に合わせ、Pageクラスで使用する
>>   DTOクラスはインジェクション(DI)させ、クラスのイン
>>   スタンスはS2Containerに管理させている
>>   DTOのインスタンスをセッションにする場合は、アノテー
>>   ションを使用してスコープの範囲を変更している
>> 
>>  ⇒ このセッションDTOにしたクラスをあるタイミングで破棄
>>    したいと考えているのですが、JSFでは以下のような処理
>>    で破棄(Null値更新)できますが、S2ContainerでDIして
>>    いる場合、どのようにすればよろしいのでしょうか?
>
>あるメソッドが正常終了したら、セッション管理のオブジェクトを
>破棄したいという場合、そのメソッドに以下のようなアノテーションを
>つけてください。
>@RemoveSession(name="aaaDto")
>よろしくお願いします。
>
>Yasuo Higa
>The Seasar Project
>_______________________________________________
>Seasar-user mailing list
>[E-MAIL ADDRESS DELETED]
>https://ml.seasar.org/mailman/listinfo/seasar-user
>



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