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

r.m [E-MAIL ADDRESS DELETED]
2007年 7月 24日 (火) 11:09:59 JST


小林様
水澤です。

iframeの利用なのですが、実際にはPageクラスを利用しています。
このPageクラスが若干厄介で、画像のアップロードを行うのに利用しています。
それにつけくわえ、CSS・Scriptのレイヤーを用いたサブウィンドウでこれを実現しているため
Includeで試したのですが、うまくいきませんでした。

うまくいかないと言うのは、画像をアップロードして、その直後その画像を画面に表示して
おります。このとき、OutputStreamを利用しているので、contenttypeにimage/jpegを指定
するのですが、includeだと、レイヤー全体がこのContenttypeになってしまうため
Textが表示されなくなります。
その為、iframeを利用していました。

今、includeで色々試していますが、かなり困難な状況です。
iframeを使い、スコープを維持する方法を考えたほうがいいかも知れません。
ただ、>XHTML1.1 では廃止された要素ですし. とういのが若干ひっかかりますが・・・。

あと、1.0.7では、全く同じ状態で、正常に動作しておりました。
まぁこちらが正常ではなかったのかも知れませんが。。。

問題は、画像のアップロード部分・表示部分かなと思いますので
そこをもうちょっと突き詰めてみたいと思います。
また、その辺り分かることがあれば、ご教授頂ければと思います。

宜しくお願いいたします。


> 小林 (koichik) です.
>
> Date:    Mon, 23 Jul 2007 20:09:43 +0900
> From:    r.m <[E-MAIL ADDRESS DELETED]>
> To:       [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:9367] Re: [Teeda]Teeda Ver1.0.8
>
> > どうしても、iframeだとうまくいかないため、サンプルソースを添付します。
>
> 状況が分かりました.
> サンプルの test.html から <iframe> を削除して,
> ブラウザで表示した後にブラウザで test2.html を
> 直接アドレス指定して表示,test.html に戻って
> サブミットしても同じ現象になります.
>
> つまり,<iframe> に限らず,表示とサブミットの間に
> 余計なリクエストが Teeda に渡るのがまずいようです.
>
> サンプルの test2.html は対応する Page クラスが
> ありませんが,もし実際のシステムでもそうなのであれば
> test2.html の拡張子を変更して test2.htm とすれば
> 正しく動作します.
> <iframe> の中に表示するのが画像みたいなものなら
> これが一番簡単な対応ですね.
>
>
> Teeda は Page クラスのプロパティを引き継ぐために
> 様々なスコープの情報をセッションに保持しています.
> このサンプルの場合,Condition の条件である
> dispOrderNum が Page スコープとしてセッションに
> 保持されます.
> <iframe> が存在しなければ,test.html のフォームが
> サブミットされた際にセッションから dispOrderNum が
> 戻されます.
>
> しかし,<iframe> があると test2.html がリクエスト
> されるため,Page スコープから TestPage の情報が
> なくなってしまいます (Test2Page が存在しないので
> Page スコープは空になります).
> そのため,test.html のフォームがサブミットされた
> 際に dispOrderNum は元に戻らず,初期値の false に
> なります.
>
> dispOrderNum が false だと Condition の条件が
> 成立しないため,その中の <input> 要素である
> orderNum にリクエストパラメータの値が設定されず,
> null のままというのが今回の起きていることでは
> ないかと思います.
> # 一応 Teeda コミッタの一員なのですが全然
> # 詳しくないので不正確かも.
>
> Teeda で対応できることとして,Page クラスに
> 関連づけられていない HTML がリクエストされた
> 際には,Page スコープを元のまま維持するように
> することができれば今回の件は解決できるような
> 気がします.
>
> しかし,可能であれば <iframe> を使わないように
> 変更していただくのがよいかと思います.
> # XHTML1.1 では廃止された要素ですし.
>
> --
> <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 メーリングリストの案内