[Seasar-user:3622] Re:[S2JSF] セッションのバインディング

onishi [E-MAIL ADDRESS DELETED]
2006年 5月 15日 (月) 11:24:25 JST


おおにしです。

メールに件名が入ってませんでした。
申し訳ないです。


> スコープの短い方(request)に長い方(session)を
> 入れることは基本的に出来ないと思います。

Seasarはスコープに注意しないとはまってしまうことがあるので
以後気をつけたいと思います。


普通にsessionのsetterを書いて工夫してみることにします。

どうもありがとうございました。


> -----元のメッセージ-----
> 差出人: "Shinpei Ohtani" <[E-MAIL ADDRESS DELETED]>
> 受取人: "[E-MAIL ADDRESS DELETED]" <[E-MAIL ADDRESS DELETED]>
> 日付: 06/05/15 11:01
> 件名: [Seasar-user:3621] Re: (無題)
> 
> おおたにです。
> 
> > 返信遅くなりました。
> > ソースは以下のようになっています。
> >
> > -- dicon --------------------------------------------------
> > <component name="userInfo"
> >   class="jp.co.corp.common.UserInfo" instance="session"/>
> > <component name="hogeAction"
> >   class="jp.co.corp.action.HogeActionImpl" instance="request"/>
> > -----------------------------------------------------------
> >
> > -- hogeActionImpl.java ------------------------------------
> > class HogeActionImpl implements HogeAction {
> >
> >   UserInfo userInfo = null;
> >
> >   〜省略〜
> >
> >   public void setUserInfo(UserInfo userInfo) {
> >       this.userInfo = userInfo;
> >   }
> > }
> > ------------------------------------------------------------
> >
> > >おおたにさん
> > >上記のsetterがあるクラスのinstanceのスコープが
> > >気になります。
> >
> > HogeAcitonImplとUserInfoのスコープが一緒じゃないといけないっぽいですね。
> 
> だと思います。スコープの短い方(request)に長い方(session)を
> 入れることは基本的に出来ないと思います。
> 
> > >米林さん
> > >上記のsetterで取得出来ないとは別になりますが
> > >sessionを直接扱いたいときは、session自体のsetterを用意すれば
> > >sessionを簡単に取得できます。
> >
> > このやり方でもいいのですが、
> > やはり煩わしいのでシンプルにしたいのです。
> 
> シンプルにするのであれば、私はこの方法が良いと思います。
> JSFのやり方だと
> 
> FacesContext.getCurrentInstance().getExternalContext().getSessionMap()
> で取れますので、こういうユーティリティクラスを書く方法もありますが
> シンプルにsetter作るほうが良いと思います。
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://www.seasar.org/mailman/listinfo/seasar-user
> 





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