Разрешить нулевой объект Number в Tapestry BeanEditor
У меня есть объект, который я хотел бы редактировать через beaneditor. Одним из свойств является Number
учебный класс.
Когда я пытаюсь отобразить beaneditor, я получаю следующую ошибку:
Параметр translate компонента core/PropertyEditBlocks: числовое поле привязано к нулю. Этот параметр не может быть нулевым.
Когда я изменил тип переменной на Double
все работало нормально.
Это как-то связано с тем, что Number
является абстрактным классом и не может быть создан? В этом случае, я должен предоставить какой-то переводчик или что-то подобное, чтобы он использовал, Double
например, при редактировании значения?
1 ответ
TextField требует translate
параметр. Гобелен имеет значения по умолчанию, зарегистрированные для String, Integer, Long и т. Д. Поскольку гобелен не может найти org.apache.tapestry5.FieldTranslator
это жалуется.
Решения:
- Используйте конкретный тип вместо числа
- Явно передать FieldTranslator в TextField (например, установить
translate
параметр) - Зарегистрировать
FieldTranslator
для номера (это звучит безумно для меня).