[Seasar-user:3031] Re: [S2JSF] s:forEach中のinputに値がセットされなくなる

yone@abby.co.jp yone
2005年 12月 19日 (月) 00:00:11 JST


米林です

jarを添付しますので試して頂けますでしょうか?
#ForEachクラスの値取り出し段階で
 保存ステートをリセットするようにしました


> 保木野です。
>
>>本間です。
>>>うーん、残念です。私の環境で再現できれば良いのですが...
>>デプロイするだけで再現できるwarファイルを頂くことはできます
>>か? (どこかにアップしていただくとか)
>>再現手順は教えていただいていますが、人手が入る以上手違いは起
>>こり得ますので。
>
> 返信が遅くなってしまい、申し訳ありませんでした。
> 表題の現象を再現させる簡単なwarを作る事はできますが、アップする場所がありま 
> 
> せん。
> 申し訳ないです。
>
> 一応、s2-jsf-blank-1.0.11.zipをベースに作った再現サンプルを添付いたします。 
> 
> s2-jsf-blank-1.0.11.zipのjarをWEB-INF/lib下にコピーしてもらえれば
> 動きます。
>
>
> さっとですが、 s2jsf のソースを読んで見ました。
>
> immediate=falseのときは、
> APPLY_REQUEST_VALUES → PROCESS_VALIDATIONS → UPDATE_MODEL_VALUES
> という順でフェーズが処理されています。
>
> immediate=trueのときは
> APPLY_REQUEST_VALUES
> のみが処理されているように見えます。
>
> immediate=trueでページを遷移すると
> APPLY_REQUEST_VALUESフェーズで、
> org.seasar.jsf.component.ForEachのEditableValueHolderStateの
> submittedValueに値がセットされます。
>
> 再度、現象の現れるページを表示したときに
> org.seasar.jsf.component.ForEachのencodeChildrenが呼ばれ
> EditableValueHolderStateのsubmittedValueの値を
> コンポーネントにセットしているため
> DTOの値が正しく表示されないという現象が起きているようです。
> #上記の事を考えると、inputTextに依存した問題ではなさそうなので
> #selectなどで試してみましたが現象は再現いたしました。
>
> immediate=trueが指定されているときは、EditableValueHolderStateの
> submittedValueをnullにすれば現象を回避できるような気がします・・・。
>
> 完全に理解したわけではないので、どう変更(修正?)すればいいと言うのは思いつ 
> 
> きませんが
> 解決の糸口になれば・・・。
>
> お手数をかけて申し訳ありません。
> よろしくお願いします。
-------------- next part --------------
テキスト形式以外の添付ファイルを除去しました...
ファイル名: s2-jsf-1.0.11-SNAPSHOT.jar
型:         application/octet-stream
サイズ:     287999 バイト
説明:       無し
URL:        http://lists.sourceforge.jp/mailman/archives/seasar-user/attachments/20051218/a0751653/s2-jsf-1.0.11-SNAPSHOT-0001.obj


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