[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 メーリングリストの案内