[Seasar-user:13431] Re: [teeda] 可変長データ(*Items)をSubapplicationScope に登録すると動的な行追加ができなくなってしまう件。

Yohji Nihonyanagi [E-MAIL ADDRESS DELETED]
2008年 3月 27日 (木) 03:02:47 JST


yohjizzz です。

すみません。動作環境が漏れておりました。

S2Container 2.4.23
Teeda 1.0.13-rc5
Java 1.5.0_12

大変失礼致しました。


> yohjizzz と申します。
>
>  表題の通りなのですが、
>  Pageクラスにて可変長データ(public List<HogeDto> hogeItems)を保持、
>  HTMLにて(JavaScriptにより)動的に行(テキストボックスやプルダウンを含む)を追加、
>  可変長データとしてフォーム送信を行う。
>
>  上記のケースは「通常」期待する動作が確認できます。
>  #たとえばレンダリング時は3行、
>  #JavaScriptで2行追加(id属性やname属性はTeeda仕様に従い追加します)すればフォームが送信されると
>  #Pageクラスには5行のDTOがバインドされます。
>
>  しかし「hogeItems」に対して SubapplicationScopeを指定すると、
>  レンダリング時の行数に対して、JavaScriptで行を追加してもフォームを受信したPageクラスにおいて、
>  doXxx実行時、hogeItemsは3行のみしかバインドされておりません。
>  4〜5行目のパラメータが送信されていることは確認済みです。
>
>  またとりあえずの回避方法として、
>  入力(行を追加する)画面にて hogeItems はデフォルトスコープとして、
>  確認画面(入力画面後に遷移する画面)のPageクラスにて、
>  SubapplicationScopeに指定する、という安易な方法を試したのですが、
>
>  1.入力画面
>  2.確認画面(SubapplicationScopeへセット)
>  3.入力画面へ戻る
>  4.再度行追加を行い、フォーム送信
>
>  上記の手順を実施すると、
>  上述と同じ状態(動的に追加した行のみバインドされない)となります。
>  (確認画面でSubapplicationScopeの指定を外せば回避できます。)
>
>  仕様上、今回のケースではSubapplicationScopeへの登録を行いたいのですが、
>  SubapplicationScopeに登録してしまった可変長データ(*Items)は、
>  JavaScriptなどによるクライアントでの動的な行追加(削除も?)は不可能なものなのでしょうか?
>
>
>
>  --
>  http://d.hatena.ne.jp/yohjizzz/
>  mailto:yohjizzz_at_gmail.com
>


-- 
mailto:[E-MAIL ADDRESS DELETED]


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