[Seasar-user:11671] Re: [Teeda] 入力フォームを空でサブミットしたらPageで空文字で受け取りたい

木村 究道 [E-MAIL ADDRESS DELETED]
2007年 11月 16日 (金) 11:23:04 JST


木村です。

小林様ご回答ありがとうございます。

> Date:    Wed, 14 Nov 2007 21:11:09 +0900
> From:    木村 究道 <[E-MAIL ADDRESS DELETED]>
> To:       [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:11648] [Teeda] 入力フォームを空でサブミットしたらPageで空文字で受け取りたい
> 
> null を空文字列に変換するインターセプタを
> 作って setter メソッドに適用してはどうでしょうか.
> こんな感じ.
なるほど、試してみます。


調査していて、javax.faces.component.UIInputクラスの
setValue()メソッドで、空文字をnullに置換えていること
がわかりました。
ここの、
    public void setValue(Object value) {
//        if ("".equals(value)) {
//            value = null;
//        }
        super.setValue(value);
        setLocalValueSet(true);
    }
のように、空文字を置換えている3行をコメントにする対応
を検討しています。
Teedaのバージョンアップの度にこのクラスの変更の有無を
チェックする覚悟はできていますが、それ以外で、何か問題
となることはないでしょうか?


>>> モデル側が空文字列で更新されちゃまずいと思うんですけど。
>>>
>> が、気になっているんですが、「モデル側」の意味がわからず
>> 理解できていません。
>>
> JSF 用語ですね.
> Teeda Extension の場合は Page クラスのことだと
> 考えていいと思います.
申し訳ありません。「モデル側」の意味がわかれば理解で
きると思っていたのですが、まだよくわかりません。
Page クラスで空文字で受け取ると問題になることがある
でしょうか?

よろしくお願い致します。

                       以 上
-- 
-----------------------------------------------------
 十八ソフトウェア株式会社
 システム開発部 アプリケーション開発課  木村 究道
 〒850-0861 長崎市江戸町6-5江戸町センタービル6F
 TEL:095-824-0018  FAX:095-827-8754
 E-mail: [E-MAIL ADDRESS DELETED]
-----------------------------------------------------




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