Estoy usando Spring CustomNumberEditor editor para enlazar mis valores de flotación y he experimentado que si en el valor no hay un número, a veces puede analizar el valor y no se devuelve ningún error.Spring CustomNumberEditor analiza números que no son números
- número = 10 ...... entonces el número es 10 y no hay errores
- número = 10a ...... entonces el número es 10 y no hay errores número
- = 10a25 ...... entonces el número es 10 y no hay errores
- Number = ...... un error porque el número no es válido
lo que parece que el editor analiza el valor hasta que pueda y omita el resto. ¿Hay alguna forma de configurar este editor para que la validación sea estricta (para que los números como 10a o 10a25 resulten en errores) o tengo que construir mi implementación personalizada? Estoy buscando algo así como establecer indulgente en falso en CustomDateEditor/DateFormat para que las fechas no se puedan analizar al más probable.
La forma en que el editor de registro es:
@InitBinder
public void initBinder(WebDataBinder binder){
NumberFormat numberFormat = NumberFormat.getInstance();
numberFormat.setGroupingUsed(false);
binder.registerCustomEditor(Float.class, new CustomNumberEditor(Float.class, numberFormat, true));
}
Gracias.
Gracias. Pero si tengo que hacer mi implementación personalizada, creo que puedo extender la clase CustomNumberEditor y anular el método setAsText comprobando si el valor es un número como lo hace y si está funcionando con super.setAsText – Javi