1

エディターで DoubleBox を使用して double プロパティ (RequestFactoryEditorDriver) を編集すると、ボックスの値をクリアすると null ポインター例外が発生するのは正常ですか?

もしそうなら、どうすれば JSR 303 Validation で DoubleBox を検証できますか?

私のコードは次のようになります。

 @DecimalMin(value="0.0", message="decimalMin:0.0", groups = {ImpuestoGroup.class,    ImpuestoIepsGroup.class})
  public double getTasaImpuesto();

 <g:DoubleBox ui:field="tasaImpuesto"></g:DoubleBox>
 @UiField DoubleBox tasaImpuesto;

driver.flush() を呼び出すと、制約を確認する必要があり、次の結果が得られます。

数値とは異なる値を入力すると、リストに悪い値が表示されます 0.0 未満の値を入力すると、driver.setConstraintViolations(constraints); を使用して EditorDriver に制約を設定できます。

フィールドを空白のままにすると、null ポインター例外ではなく、不適切な値または制約を持つリストが期待されます。

私が注目する行はこれです:

 Caused by: com.google.gwt.core.client.JavaScriptException: (TypeError) : Cannot read property 'value_0' of null
at Unknown.$doubleValue(http://localhost:9876/proj/C6E66C9FC3DCB1FC08DFFFC07FE049E0.cache.js@21:38447)

DoubleBox は null 値を処理できないようです。

私を助けてください。ありがとうございました。

4

1 に答える 1

2

Googleグループで回答、便宜上ここにコピー:

DoubleBoxを使用しDoubleParserます。値が空の文字列の場合はをDoubleParser返し、それ以外の場合はを使用し、解析できない場合はをスローします。編集したオブジェクトのプロパティはタイプではなくタイプであるため、フィールドが空の場合はを返し、Editorフレームワークはボックスを解除してプロパティに配置しようとします。したがって、。違法な値で、スローします。その場合、は最後の既知の値を返します。これは、その場合にスローされない理由を説明しています。nullNumberFormatParserExceptiondoublejava.lang.DoublegetValue()nullnulldoubleNullPointerExceptionDoubleParserValueBoxEditor

拡張のリクエスト:http ://code.google.com/p/google-web-toolkit/issues/detail?id = 7783

于 2012-11-12T09:16:00.123 に答える