[Seasar-user:2988] Re: [S2JSF] m:immediate の動作について

Hirotaka HONMA manhole
2005年 12月 4日 (日) 01:27:26 JST


本間です。

immediate=true時には、画面から入力した値(submittedValueと言
います)がそのまま再表示されるようです。
input項目をhtmlレンダリングでは、submittedValueがある場合に
はModelの値ではなくsubmittedValueが表示されます。
Actionで与えた値がspanには表示され、inputに空文字が表示され
ているのはそのためです。

補足: submittedValueがクリアされるのはvalidationフェーズ時で
すが、immediate=trueの場合はvalidationフェーズがスキップされ
ます。

とは言ってもActionで設定した値が画面に表示されないのもどうか
とは思いますが、、、

# Modelの値が更新された場合はsubmittedValueではなくModel値を
# 表示できれば良いのでしょうか。良い方法があるかなぁ...
# JSFの仕様も含めて、どういった動作が望ましいのでしょうか?


On 11/17/05, 松山 大樹 <[E-MAIL ADDRESS DELETED]> wrote:
>
> 松山です。
>
> 最初の問題についてです。
>
> >→今のところ私の環境ですと現象が発生しませんので、
> > 上記でおっしゃられている
> > 「このような現象が発生する場合には、このあたりの記述」
> > の部分までたどり着けないのが現状です。。泣
>
>  再現できる簡単なWebアプリケーションを作ったので、よろしければ
> こちらで試してみてください。
> /WEB-INF/lib の下の*.jar は、s2jsf-blank のものをそのままコピー
> した後、
>  s2-extension-2.3RC2.jar
>  s2-framework-2.3RC2.jar
> を、S2.3 のものと置き換えてください。
> あと、データベースは使用していませんが、s2-dao-1.0.26.jar は、
> こちらでは、s2-dao-1.0.28.jar にしています。
>
> /s2jsf-test/ または、/s2jsf-test/test/Test.html を開いて
> いただくと、上半部に一覧、下半分に編集画面が表示されます。
>
> userID と userName のリンクは、どちらも同じアクションを実行しますが、
> userID の方に、m:immediate="true" が設定してあります。
>
> Tomcat5.0.30、JDK1.4.2_09 です。
>
> ただ、奇妙なことに(これが正しいのかもしれませんが)、この状態で、
> enctype="multipart/form-data" を付けても、なぜか正常に動作してしまう
> のですが(^^;
> 奥が深いです。



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