double it.error = 1,int it.d = 2
<h:outputText value="#{it.error}">
<f:convertNumber maxFractionDigits="2" minFractionDigits="2"/>
</h:outputText>
显示1.00
但
<h:outputText value="#{it.error}">
<f:convertNumber maxFractionDigits="#{it.d}" minFractionDigits="#{it.d}"/>
</h:outputText>
显示1
使用tomcat 6.0.29和mojarra 2.1.4
答案 0 :(得分:2)
如果<h:outputText>
位于<h:dataTable>
内,并且#{it}
在构建视图时在范围内不可用(但仅在呈现视图时),则会发生这种情况。像<f:xxx>
这样的标记处理程序仅在构建视图时创建/评估。
有几种方法可以解决此问题,所有这些方法都在以下答案中列出:How to set converter properties for each row of a datatable?