Я использую JSF 1.2 с IceFaces 1.8 в проекте здесь.
У меня есть страница, которая представляет собой большую сетку редактирования для целого ряда числовых полей с плавающей точкой. Это реализовано с помощью полей inputText
на странице, указывающих на объект значения с примитивом float
types
Теперь, когда новое требование видит, что некоторые поля могут быть обнуляемыми, я хотел изменить объект значения, чтобы использовать Float
объекты вместо примитивных типов. Я не думал, что мне нужно что-то делать со страницей, чтобы приспособиться к этому.
Однако, когда я делаю изменение, я получаю следующую ошибку:
/ pages / page.xhtml @ 79,14 value = "# {row.targetValue}": java.lang.IllegalArgumentException: несоответствие типов аргументов
И
/ pages / page.xhtml @ 79,14 value = "# {row.targetValue}": java.lang.IllegalArgumentException: java.lang.ClassCastException@1449aa1
Страница выглядит так:
<ice:inputText value="#{row.targetValue}" size="4">
<f:convertNumber pattern="###.#" />
</ice:inputText>
Я также попытался добавить туда <f:convert convertId="javax.faces.Float" />
, но это тоже не сработало! Также не изменяется тип объекта значения на Double
.
Я уверен, что, возможно, я упускаю что-то действительно простое, но я уже давно смотрю на это, и ответы сразу не очевидны!