[Seasar-user:7342] [Teeda] ForEach が含まれるページのリクエストパラメータの挙動について

O.Goto [E-MAIL ADDRESS DELETED]
2007年 4月 18日 (水) 20:14:03 JST


後藤(goto)です。

Teeda ExtensionのForEachが含まれるページで期待しているのとは違う挙動をしているため、
もし不具合であれば対応をお願いします。

環境は、
JavaSE 5.0 Update 11
Tomcat 5.5.23
S2.4.11
Teeda 1.0.6
です。

現象としては、PageにForEachで表示するためのDTO配列があり、DTOに含まれる
プロパティと同じ名前のプロパティがPageにも存在する場合、そのパラメータが
リクエストパラメータとしてsubmitされてもPageのプロパティにはNULLが
セットされてしまうというものです。

添付したサンプルをTeeda-html-exampleに置き換えて動かすと再現します。

foreach.htmlを表示し、foo、barに適当な値を入力してgoXXX、 doXXXボタンを押すと
いずれもfoo、bar(id はそれぞれ foo-text bar-text)が空になります。
自画面への遷移でも他画面への遷移でも変わりありません。

どうやら
org.seasar.teeda.extension.component.TForEach#processUpdates()
に入ってきたときはPageに値がセットされているのですが、
DTO配列に存在するプロパティ名と同じプロパティの場合、最終的にNULLが
セットされてしまうようです。

そこで、添付したパッチのようにしてみたところリクエストパラメータがNULLになることなく
画面にも表示されました。

そもそもこの現象は不具合なのか仕様なのかわからないため、もし不具合であれば
修正をお願いします。
-------------- next part --------------
文字コード指定の無い添付文書を保管しました...
名前: TForEach_patch106.txt
URL:  http://ml.seasar.org/archives/seasar-user/attachments/20070418/c5378b2f/attachment-0001.txt 
-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: teeda-html-example.zip
型:         application/zip
サイズ:     4289 バイト
説明:       無し
URL:        http://ml.seasar.org/archives/seasar-user/attachments/20070418/c5378b2f/attachment-0001.zip 


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