[Seasar-user:12363] Re: [Teeda]intフィールドに@NumberConverterを設定するとValidatorに渡る値がLongに変わる
YASUO HIGA
[E-MAIL ADDRESS DELETED]
2007年 12月 31日 (月) 09:06:56 JST
ひがです。
> 丹野と申します。初めて質問いたします。
>
> Seasar2 2.4.17、Teeda 1.0.11-SP1 で開発しております。
>
> Pageクラスのint/Integerのフィールドに@NumberConverterを設定すると
> 同じフィールドに設定したValidatorに渡る値が
> IntegerからLongに変わってしまう現象が発生します。
>
> 関係ない箇所は省略したソースです。
>
> public class XxxPage {
> @MyXxx
> @IntegerConverter
> @NumberConverter(pattern = "0000")
Converterは、複数指定しても意味がないので、
@IntegerConverterだけを指定するようにしてください。
でも@IntegerConverterってpatternが
指定できないんですね。
将来的には、@IntegerConverterでpatternをサポートしたほうが
いい気がしますが、とりあえず今のまま試すなら、
ValidatorでIntegerに変換してください。
@NumberConverterの場合、Longに変換するのは、
小林さんが書いているとおりJSFの仕様だと思います。
よろしくお願いします。
Seasar-user メーリングリストの案内