[Seasar-user:9401] Re: [Teeda]Teeda Ver1.0.8

r.m [E-MAIL ADDRESS DELETED]
2007年 7月 24日 (火) 16:39:27 JST


水澤です。
ひが様
小林様

ご指摘等々ありがとうございます。
サンプルソースにてnewwindow=true で正常に動作する事が確認出来ました。
iframeは サポート外とのことなので、そのこともふまえて修正をしたいと思います。

また 何かありましたら、宜しくお願いいたします。


> 小林 (koichik) です.
>
> Date:    Tue, 24 Jul 2007 11:09:59 +0900
> From:    r.m <[E-MAIL ADDRESS DELETED]>
> To:       [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:9386] Re: [Teeda]Teeda Ver1.0.8
>
> > 今、includeで色々試していますが、かなり困難な状況です。
> > iframeを使い、スコープを維持する方法を考えたほうがいいかも知れません。
>
> <iframe> を使って問題を回避する方法が分かりました.
> <iframe> の src 属性に指定する URL に
>
> newwindow=true
>
> というパラメータを指定してください.
> [Seasar-user:9367] で頂いたサンプルだと,
>
> <iframe height="50" width="50" id="test" scrolling="no" frameborder="0" src="./test2.html?newwindow=true" />
>
> となります.
>
> これにより,<iframe> の中で表示されるページは
> 外側のページとは別のスコープで管理されるようになります.
> 当然,サブアプリケーションスコープのプロパティ等も
> 引き継がれなくなるので,必要な情報は明示的にパラメータで
> 引き渡すようにしてください.
>
>
> Date:    Tue, 24 Jul 2007 11:13:57 +0900
> From:    r.m <[E-MAIL ADDRESS DELETED]>
> To:       [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:9387] Re: [Teeda]Teeda Ver1.0.8
>
> > >そのため,test.html のフォームがサブミットされた
> > > 際に dispOrderNum は元に戻らず,初期値の false に
> > > なります.
> > >
> > > dispOrderNum が false だと Condition の条件が
> > > 成立しないため,その中の <input> 要素である
> > > orderNum にリクエストパラメータの値が設定されず,
> > > null のままというのが今回の起きていることでは
> > > ないかと思います.
> >
> > この部分ですが、submitされた際、dispOrderNum がTrueになっていることを確認しています。
> > 実際には、ValidationをPage内で実装していて、
> > if(dispOrderNum && orderNum == null) の条件の時にエラーにしていて、実際エラーに
> > なってしまいます。
>
> 自分が書いたのは ApplyRequestValues というフェーズでの
> 動作になります.
> 本来ならその時点では Teeda が管理しているセッション情報の
> Page スコープから dispOrderNum の値が復元されるはずですが,
> その直前に <iframe> からのリクエストがあったためにその
> 情報が消えてしまい,初期値の false のままとなっています.
> この時の dispOrderNum の値 (false) で Condition が判定され,
> false なので orderNum にリクエストパラメータの値は設定
> されません.
> dispOrderNum 自身は Conditon の外にあるのでリクエスト
> パラメータから値が設定され,true になります.
>
> Validator が呼び出されるのはその後の ProcessValidation
> フェーズなので,dispOrderNum は true になります.
>
> そんなわけで (どんなわけで?),dispOrderNum は実は
> HTML に <input type=hidden"> を持たなくても
> 適切に動作するはずです.
>
>
> --
> <signature>
>    <name>Koichi Kobayashi</name>
>    <e-mail>[E-MAIL ADDRESS DELETED]</e-mail>
> </signature>
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>



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