[Seasar-user:5010] Re: [S2JSF] S2CompareValidatorの挙動について

SCC八戸駿 [E-MAIL ADDRESS DELETED]
2006年 11月 7日 (火) 19:23:51 JST


お世話になっております。
八戸です。
遅くなって申し訳ありませんが先週の質問について回答します。

以下は要件についてexampleのvalidator.htmlの例で説明します。
要件は
・From、Toはそれぞれ任意入力項目(m:required="false")
・From(To)が入力された場合はTo(From)も必須入力項目
とします。

Toの方へのValidatorですが、現状のまま

 ・From はValidatorなし
 ・To はGreaterEqualValidator

とすると、

 (1)From:1    To:2    → 正常
 (2)From:2    To:1    → エラー
 (3)From:未入力 To:2    → 正常(GreaterEqualValidatorの仕様)
 (4)From:1    To:未入力 → 正常(Toが未入力なのでチェックされない)

と言う動作になります。
この時に、(3)はValidatorの実装で対応することが出来るのですが、
(4)は、Toが未入力なので、チェック自体が行われません。
この時にFormに値が入力されて欲しくない場合があり問題になっています。

そのため、対応として、
 ・Fromに逆の動きをするValidatorで「From<=To」のチェック
 ・ToにはGreaterEqualValidatorで「From<=To」のチェック
を行おうと考えています。

このFrom側に設定するValidatorでは、Toの値を取得したいのですが、
まだTo側のUIOutput#getValue()では、値を取得することができず、
今回の依頼をした次第です。


以上よろしくお願いします。



On Fri, 03 Nov 2006 00:01:48 +0900, Shinpei Ohtani  
<[E-MAIL ADDRESS DELETED]> wrote:

> おおたにです。
>
> 素朴な疑問ですが教えてください。
> 下記の件で、Toの方にValidatorを仕掛けるのではだめなのでしょうか?
>
>
> 06/11/02 に SCC八戸駿<[E-MAIL ADDRESS DELETED]> さんは書きました:
>> お世話になっております。
>> 以前にS2CompareValidatorについてメールをしました八戸です。
>>
>> この件に関しては、仕様も含めて話し合っていただけるとのことでしたが、
>> いつまでに、どのような対応を予定しているのか教えて頂きたくメールしまし 
>> た。
>>
>>
>> 現在のS2CompareValidatorを使用し、入力が必須(m:required="true")でない 
>>>> 合、
>> 上手く動作させることができません。
>>
>> 現在対応中の案件で、このような動作がでは必須となっております。
>> コミュニティで対応がなされない場合は、独自に実装することになり、
>> 現在実装しているValidatorの見直しを行わなければなりません。
>>
>> 今後のスケジュールにも影響してしまいますので、
>> いつまでにどのように対応となるかを教えていただけないでしょうか。
>> お忙しいところ申し訳ありませんが、よろしくお願いします。
>>
>>
>> --------------------------------------------------------
>>    八戸 駿(Takashi Hachinohe)
>>    株式会社SCC 第1システム事業部 システムサービス部
>>    TEL: 03-3228-4446 FAX: 03-3319-6994
>>    E-mail: [E-MAIL ADDRESS DELETED]
>> --------------------------------------------------------
>>
>>
>>
>>
>>
>> On Tue, 24 Oct 2006 18:47:23 +0900, <[E-MAIL ADDRESS DELETED]> wrote:
>>
>> > 米林です。
>> >
>> > 下記の件につきまして、仕様も含め
>> > コミッタ間で話し合ってみます。
>> >
>> > 補足ですが、EditableValueHolderですね。
>> >
>> > よろしくお願いします。
>> >
>> > From: "SCC八戸駿" <[E-MAIL ADDRESS DELETED]>
>> > Sent: Tuesday, October 24, 2006 4:46 PM
>> >
>> >> はじめまして。
>> >> 八戸と申します。
>> >> 以後よろしくお願いいたします。
>> >>
>> >> 早速なのですが、S2JSFにおける複数項目チェックValidatorの処理について
>> >> 確認したいことがありメールいたしました。
>> >> 以下は「s2jsf-example-1.0.18」で確認しています。
>> >>
>> >> S2CompareValidatorクラスの、validateメソッドで、
>> >> ValueHolderUtil#getValue(UIComponent)
>> >> にて値を取得するコードとなっています。
>> >> この中では、ValueHolder#getValue()を使用して値を取得しているため、
>> >> すでにvalidateされたコンポーネントからしか値が取得できません。
>> >>
>> >> この処理を、例えば
>> >> ValueHolder#getValue()で値を取得し、「null」の場合は
>> >> ValueHolder#getSubmittedValue()で取得する
>> >> のように変更していただくことは可能でしょうか。
>> >>
>> >>
>> >>
>> >> ######################## 以下は確認内容です  
>> ########################
>> >>
>> >> Validatorのサンプル(s2jsf-sample/validator/validaotr.html)を使用。
>> >>
>> >>  
>> ----------------------------------------------------------------------
>> >>  From:
>> >>  <input id="from" type="text" m:label = "From"></input> -
>> >>  To:
>> >>  <input id="to" type="text" m:label = "To">
>> >>    <span m:inject="s:validator"
>> >>          m:binding="#{greaterEqualValidator}" m:targetId="from"/>
>> >>  </input>
>> >>  <span m:inject="h:message" m:for="to"/>
>> >>  
>> ----------------------------------------------------------------------
>> >>
>> >> のようにToの入力ボックスに指定してあるValidatorを、
>> >>
>> >>  
>> ----------------------------------------------------------------------
>> >>  From:
>> >>  <input id="from" type="text" m:label = "From">
>> >>    <span m:inject="s:validator"
>> >>          m:binding="#{greaterEqualValidator}" m:targetId="to"/>
>> >>  </input> -
>> >>  To:
>> >>  <input id="to" type="text" m:label = "To"></input>
>> >>  <span m:inject="h:message" m:for="from"/>
>> >>  
>> ----------------------------------------------------------------------
>> >>
>> >> のように変更して、FromにValidatorを指定すると、
>> >> 「from」でのvalidateの際に「to」の値が取得できない。
>> >>
>> >>  
>> ######################################################################
>> >>
>> >>
>> >> お手数かとは思いますが、ご検討の程よろしくお願いいたします。
>> >>
>> >> ------------------------------------------------
>> >>  八戸 駿(Takashi Hachinohe)
>> >>  株式会社SCC  システム事業本部
>> >>  第1システム事業部 システムサービス部
>> >>  TEL: 03-3228-4446
>> >>  FAX: 03-3319-6994
>> >>  E-mail: [E-MAIL ADDRESS DELETED]
>> >> ------------------------------------------------
>> > ---
>> > 米林 正明
>> > [E-MAIL ADDRESS DELETED]
>> >
>> >
>> > _______________________________________________
>> > Seasar-user mailing list
>> > [E-MAIL ADDRESS DELETED]
>> > https://www.seasar.org/mailman/listinfo/seasar-user
>> >
>>
>>
>> _______________________________________________
>> Seasar-user mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>
>
>





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